URL重定向返回403而不是302

时间:2018-12-18 22:57:07

标签: python python-3.x python-requests

import requests

def extractlink():
    with open('extractlink.txt', 'r') as g:
        print("opened extractlink.txt for reading")
        contents = g.read()
        headers = {'userAgent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'}
        r = requests.get(contents, headers=headers)
        print(("Links to " + r.url))
        time.sleep (2)

当前,r.url只是链接到在'extractlink.txt'中找到的URL

我正在寻找解决此脚本的方法,以找到最终的重定向URL并打印结果。尽管尝试了许多替代方法和疑难解答步骤,但问题似乎出在URL请求中,而我的问题似乎没有得到解决。

调试时,r.history读为[]r.status_code读为403,即使链接在浏览器中重定向为302。 有什么想法吗?

(extractlink.txt只是一个单行文件,具有指向http://butterup.teechip.icu/的链接,请谨慎输入垃圾邮件网站)

再一次,这不是重复的,如果您不再将其标记为此类,我将不胜感激。信息和代码以及错误/目标已更改。

2 个答案:

答案 0 :(得分:1)

您刚刚误命名了User-Agent标头:

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'}
r = requests.get(contents, headers=headers)

答案 1 :(得分:0)

尽管进行了许多故障排除尝试,但答案似乎在于用于脚本的主机,该主机在未列入白名单的站点上返回了403。