【问题标题】:local python proxy for web browserWeb浏览器的本地python代理
【发布时间】:2012-05-18 09:26:54
【问题描述】:

大家好!使用 firefox 插件,我可以捕获标题。我想在 python 中执行此操作:我需要将浏览器代理设置更改为 localhost:8080 (或任何端口),然后浏览器发出的每个请求都应该通过实际运行在我的机器上的 python 脚本。该脚本应该能够捕获标题,捕获网页中的链接等。我知道 Web 应用程序扫描仪会这样做,但我怎么能在 python 中做到这一点。你能建议任何开始的地方,阅读吗?我只是想了解它并实施一个。

【问题讨论】:

  • 去年我用python做了一个简单的代理,但是我找不到我把脚本放在哪里:(。无论如何,实现http部分很容易,但支持https(通过CONNECT方法)是相当困难。我从来没有足够的动力去实现它。

标签: python localhost web-crawler proxy-server


【解决方案1】:

看看python-proxy。谷歌搜索"python proxy" 也会产生大量结果。

如果你想从头开始写一个也不是太难。您可以使用BaseHTTPServer 来监听新连接,通过SocketServer.ThreadingMixIn 使其成为多线程,然后实现do_GETdo_CONNECT(可能还有do_POSTdo_HEAD)。在这些方法中,您需要从 self.path 中提取 URL,向该 URL 发送 HTTP 请求(最好使用 requests 包,它比 urllib 更舒服)并将响应发送回客户端。

【讨论】:

  • 我想学习构建这样的服务器,所以你的回答很好,但如果我是这个东西的新手,我可以从哪里开始学习,我认为仅仅阅读 python 文档是不够的。跨度>
  • 阅读文档并使用这些东西查看现有代码通常就足够了。
猜你喜欢
  • 1970-01-01
  • 2010-09-19
  • 1970-01-01
  • 2011-06-04
  • 1970-01-01
  • 2014-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多