【发布时间】:2021-03-02 03:15:41
【问题描述】:
我正在使用 Python 开发 url 重定向器应用程序。这个应用程序的想法很简单:当用户向某个域(例如https://google.com)执行http请求时,应用程序停止请求并执行另一个http请求(例如https://github.com),从而将用户重定向到第二页。
不幸的是,我查看了 SO,但没有找到任何直接解决此问题的问题:
诚然,我只有一些伪造的伪代码来演示我想要做什么,但它可能会很有用:
import requests
original_site = "https://google.com"
redirect_site = "https://github.com"
def redirect_request():
if requests.get(original_site) == True:
requests.kill(request.original_site.id)
requests.get(redirect_site)
我非常感谢任何建议。
编辑 - 这是我的意思的澄清:
用户运行我的python脚本,我称之为foobar.py,如下:
python foobar.py
然后用户打开网页浏览器,输入网址https://google.com,随着脚本的运行,用户实际上不会访问https://google.com,而是重定向到https://github.com
【问题讨论】:
-
我不明白这里的上下文。如果用户在浏览器中键入 google.com,您的代码将如何“拦截”该请求?您是否假设他们已经安装了您的某些程序?
-
@JohnGordon 没错,我假设他们将从命令行运行脚本,例如
python myscript.py然后打开浏览器输入google.com -
您可能想要浏览器插件之类的东西。否则你不能让浏览器做这样的事情。或者您可以弄乱主机文件并在那里进行 DNS 重定向。
-
使用 selenium 并注入一些执行重定向的 javascript 怎么样?因为我试图将其保留为 python 脚本,而不是浏览器插件。
标签: python redirect python-requests