راکت
حل شده

شناسایی آخرین آدرس منتقل شده با پایتون

3 پاسخ

سلام دوستان گرامی ...
من یه سورس پایتون مینویسم برای چک یه چند تا چیز...
نیاز دارم آخرین آدرسی که سایت به اون منتقل میشه رو به دست بیارم....
حالا انتقال با متاتگ رفرش باشه یا جاوا اسکریپت....
برای روشن شدن موضوع مثال میزنم

این سایت رو که باز کنید انتقال میابه به این

البته این با متاتگ ریفرش منتقل شده... ممکنه با جاوا اسکریپت هم منتقل بشن... هیچ تضمینی وجود نداره...

حالا من میخوام این ادرسو به دست بیارم و بتونم مثلا با پایتون پرینتش کنم....
ماژول requests فقط میتونه ریدایرکت از htaccess رو شناسایی کنه مثل ریدایرکت 301...

راهکاری دارید؟

ممنون

ثبت پرسش جدید

پاسخ‌ها

3
IrajJavidan
IrajJavidan
@IrajJavidan1
بهترین پاسخ

وب درایور یدونه پراپرتی داره به اسم currenturl که میتونین آدرس صفحه فعلی که لود شده رو بگیرین

driver.current_url

https://selenium-python.readthedocs.io/api.html


این سوال توی استک اور فلو مشابه سوال شماست
https://stackoverflow.com/questions/24391452/how-to-capture-js-redirects-in-selenium

برای اینکه توی پس زمینه اجرا بشه هم

option = webdriver.ChromeOptions()
option.add_argument('headless')
driver = webdriver.Chrome('path/to/chromedriver',options=option)

میتونین درباره headless browser جستجو کنین
یک کار دیگه هم که میتونین استفاده کنین، برنامه نویسی اندروید و استفاده از webView هست.

IrajJavidan
IrajJavidan
@IrajJavidan1

ریدایرکت های جاوااسکریپت یا این مثالی که گفتین رو براش شما باید بیاین باید جاوااسکریپت رو اجرا کنین که ماژول requestsاین کار رو انجام نمیده

یا بیاین و سورس صفحه رو parse کنین و لینک رو استخراج کنین

یا بیاین جاوااسکریپت رو اجرا کنین که میتونین از سلنیوم استفاده کنین
لینک زیر هم میتونه درباره اجرای جاوااسکریپت در پایتون مفید باشه
https://webscraping.com/blog/Scraping-JavaScript-webpages-with-webkit/

Monister
Monister
@tele2639mr

تخصص: Full Stack Developer / Ui/UX Designer / Hack And Security

متاسفانه اصلا حالت ثابتی نداره که parse منطقی باشه!

سلنیوم منطقی تره ولی متوجه نشدم باید چجوری پیش برم دقیقا!

و اینکه نمیشه کلا سایت رو توی بکگراند اجرا کرد ولی به صورتی که مطالب خارجی لود نشن؟ البته بدون متوجه شدن کاربر بعد ادرس رو از اون گرفت؟!

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام