【问题标题】:get url values and send them back to address in python获取 url 值并将它们发送回 python 中的地址
【发布时间】:2016-01-01 15:59:57
【问题描述】:

我有一个链接,它正在生成一个必须回答的方程式。 为此,我正在尝试读取返回的 http 以找到这些数字

import urllib2, urllib
url = 'http://someurl.com'
answerRegexp = re.compile('''(\d+)\s([+-])\s(\d+)\s=\s<input name="answer"''')
response = urllib2.urlopen(url)
html = response.read()
res = answerRegexp.findall(html)[0]

values = {'field1': 'value1',
      'field2': 'value2',
      'answer': eval("%s%s%s" % (res[0], res[1], res[2])) # 2+3 for example
}

data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
the_page = response.read()

这不起作用,因为data 正在创建另一个请求,其中正在生成一个新方程,因此计算的值将与正确答案不匹配。

【问题讨论】:

    标签: python http httprequest urllib2 urllib


    【解决方案1】:

    您正在使用的网站可能正在使用会话 cookie,您需要来回传递这些 cookie 以识别上一个会话(从而防止生成新的质询)。考虑使用 Requests 库 http://docs.python-requests.org/en/latest/,它将为您处理所有这些问题。

    【讨论】:

      猜你喜欢
      • 2013-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-14
      • 2017-10-24
      • 2011-03-22
      • 1970-01-01
      相关资源
      最近更新 更多