【问题标题】:Python: urllib2 multipart/form-data and proxiesPython:urllib2 multipart/form-data 和代理
【发布时间】:2009-11-27 04:31:34
【问题描述】:

目标:一个脚本,它循环遍历代理列表并发送一个发布请求,其中包含一个文件到我服务器上的 PHP 页面,然后计算交付时间。这是一个相当无用的脚本,但我正在使用它来自学 urllib2。

问题:到目前为止,我已经使用Poster 正确发送了 multipart/form-data,但我无法通过代理发送它,更不用说代理循环列表了.我曾尝试使用带有 urllib2.ProxyHandler 的 OpenerDirector,但我相信 Poster 定义了它自己的开瓶器来执行它的魔法。

以下是使用海报发送多部分/表单数据请求的代码。

import urllib2
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers

fields = {"type": "image",
          "fileup": open("/home/chaz/pictures/test.jpg", "rb")
         }

register_openers() #I believe this is the key
datagen, headers = multipart_encode(fields)
request = urllib2.Request("http://foo.net", datagen, headers)

lastResponse = urllib2.urlopen(request).read()

任何帮助将不胜感激,因为我很难过。

【问题讨论】:

  • proxy_support 未定义。它对你有什么作用?

标签: python proxy urllib2 multipartform-data poster


【解决方案1】:

在请求页面之前,您可以像这样添加代理安装程序。

from urllib2 import ProxyHandler,build_opener,install_opener

PROXY="http://USERNAME:PASSWD@ADDRESS:PORT"

opener = build_opener(ProxyHandler({"http" : PROXY}))

install_opener(opener)

【讨论】:

  • 我自己想出来的,你的回答是中肯的建议,所以享受积分; )
猜你喜欢
  • 2017-11-07
  • 1970-01-01
  • 2016-07-03
  • 2022-06-11
  • 2012-10-21
  • 1970-01-01
  • 2021-04-22
  • 2011-03-17
  • 2015-09-19
相关资源
最近更新 更多