- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我注意到 Python 的请求库不像我的浏览器那样遵循某些 URL 重定向。
例如,当我这样做时:
response = requests.get('http://www.bbmt.org/', verify=False, allow_redirects=True)
但是,在我的浏览器中,我最终被重定向回 http://www.bbmt.org/ .
有没有办法让请求在这些情况下表现得像我的浏览器?
最佳答案
https://secure.jbs.elsevierhealth.com
中的重定向是一个 javascript 重定向。
您可以在源代码中看到它:
window.location.href = "http://www.bbmt.org/action/consumeSharedSessionAction?SERVER=WZ6myaEXBLHj3ZzqSv9HPw%3D%3D&MAID=IBS8Eq6B1iRWhf2ywTW5pg%3D%3D&JSESSIONID=aaa8eY-zM394XcPptT_Kv&ORIGIN=670572791&RD=RD";
您需要运行 javascript 才能执行此重定向(这是请求不会执行的操作)。
如果您需要针对此特定重定向的解决方案,您可以解析响应的内容(在 Python 中)并获取该特定的 URL
并使用它来创建新请求。
如果您需要通用解决方案 - 您将需要使用 headless 浏览器来实现。你可以找到more information in this question .
关于python - 如何让 Python 请求像我的浏览器一样跟随 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41352373/
我是一名优秀的程序员,十分优秀!