如何使用python请求获取重定向URL
这是我获取重定向URL的代码。这是为了教育目的。我觉得这个请求被检测为bot,所以这个网站变成了reCaptcha,尽管我使用了假的用户代理和代理。在使用requests.get之前,我没有得到不同的链接,而是得到了相同的url。有没有办法解决这个问题如何使用python请求获取重定向URL,python,web-scraping,data-mining,Python,Web Scraping,Data Mining,这是我获取重定向URL的代码。这是为了教育目的。我觉得这个请求被检测为bot,所以这个网站变成了reCaptcha,尽管我使用了假的用户代理和代理。在使用requests.get之前,我没有得到不同的链接,而是得到了相同的url。有没有办法解决这个问题 import requests from fake_useragent import UserAgent ua = UserAgent() hdr = {'User-Agent': ua.random, 'Accept': 'text
import requests
from fake_useragent import UserAgent
ua = UserAgent()
hdr = {'User-Agent': ua.random,
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
'Accept-Encoding': 'none',
'Accept-Language': 'en-US,en;q=0.8',
'Connection': 'keep-alive'}
PROXY = {"http":"http://X.X.X.X:YYYY"}
url = "https://avxhm.se/go/6074475/0/"
response = requests.get(url, allow_redirects=True, headers=hdr, proxies = PROXY)
print(response.url)
一个技巧是使用requests.Session()将调用包装起来。所以,当带有标题的请求不起作用时,会话就变得方便了
import requests
url = 'https://avxhm.se/go/6074475/0/'
user_agent = {'User-agent': '14.0.3 Safari'}
session = requests.Session()
r1 = session.get(url, headers=user_agent)
print(r1.url)
这回答了你的问题吗?对不起,这不是答案。我试图找到一种绕过机器人检测的方法。我的代码在其他网站上运行得很好,而不是这个特定的网站。我想知道你是否测试过它?这对我不起作用。老实说,我也尝试过session.get,结果没有任何变化。例如,当您运行此代码10次时,您的IP处于黑名单中,因此他们将启用reCaptcha。我的目标是开发一个代码片段,它可以通过代理随时获取最终URL,而无需任何reCaptcha。当然,它会给我“”请尝试运行10或20次,然后,如果没有代理,您将永远陷入困境。即使你有代理,你仍然会被卡住。如果我使用Selenium来模拟浏览器,它工作得很好。但是Selenium的性能非常差。这就是为什么我试图改变请求获取方法。