How do I get the final URL from a redirect link? (like requests.get from python)?

18 visualizaciones (últimos 30 días)
I'm using a SERP API to return Google Shopping links, and sometimes it returns Google aclk redirect links. In Python, the requests.get command and accessing the .url field gives me what I'm looking for. I tried using python within Matlab and it works with a single url, but when I try to use within a for loop it always freezes.

Respuestas (1)

Mohammad Sami
Mohammad Sami el 7 de Abr. de 2022
You can use the matlab.net.http interface to follow the redirects.
request = matlab.net.http.RequestMessage;
uri = matlab.net.URI('https://goo.gl/maps/co8U2mMv8zFweDzN8');
[response,completedrequest,history] = send(request,uri);
finaluri = history(end).URI;
disp(finaluri);
URI with properties: Scheme: "https" UserInfo: [0×0 string] Host: "www.google.com" Port: [] EncodedAuthority: "www.google.com" Path: ["" "maps" "place" "Houston,+TX,+USA" "@29.8174782,-95.6814846,10z" "data=!3m1!4b1!4m5!3m4!1s0x8640b8b4488d8501:0xca0d02def365053b!8m2!3d29.7596088!4d-95.3723145"] EncodedPath: "/maps/place/Houston,+TX,+USA/@29.8174782,-95.6814846,10z/data=!3m1!4b1!4m5!3m4!1s0x8640b8b4488d8501:0xca0d02def365053b!8m2!3d29.7596088!4d-95.3723145" Query: [1×1 matlab.net.QueryParameter] EncodedQuery: "shorturl=1" Fragment: [0×0 string] Absolute: 1 EncodedURI: "https://www.google.com/maps/place/Houston,+TX,+USA/@29.8174782,-95.6814846,10z/data=!3m1!4b1!4m5!3m4!1s0x8640b8b4488d8501:0xca0d02def365053b!8m2!3d29.7596088!4d-95.3723145?shorturl=1"

Categorías

Más información sobre Call Python from MATLAB en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by