1

我正在尝试从仅包含文本的网站读取数据。我只想读取“&values”后面的数据。我已经能够打开整个网站,但我不知道如何摆脱无关数据,我不知道任何 HTML。任何帮助将非常感激。

4

2 回答 2

3

该 url 的内容看起来像 url 参数。您可以使用urllib.parse_qs将它们解析为字典:

import urllib2
import urlparse

url = 'http://www.tip.it/runescape/gec/price_graph.php?avg=1&start=1327715574&mainitem=10350&item=10350'
response = urllib2.urlopen(url)
content = response.read()
params = urlparse.parse_qs(content)
print(params['values'])
于 2012-10-27T01:59:11.890 回答
2

您可能想要查看该re模块(尽管如果您最终迁移到 HTML,正则表达式不是最好的解决方案)。这是一个基本示例,它获取后面的文本&values并返回以下数字/逗号/空格组合:

>>> import re
>>> import urllib2
>>> url = 'http://www.tip.it/runescape/gec/price_graph.php?avg=1&start=1327715574&mainitem=10350&item=10350'
>>> contents = urllib2.urlopen(url).read()
>>> values = re.findall(r'&values=([\d,\s]*)', contents)
>>> values[0].split(',')
['33900000', '33900000', '33900000', #continues....]
于 2012-10-27T01:57:04.277 回答