从网站读取数据

时间:2012-10-27 01:51:01

标签: python web-scraping

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

2 个答案:

答案 0 :(得分:3)

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

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'])

答案 1 :(得分:2)

您可能需要查看re模块(尽管如果最终转移到HTML,regex is not the best solution)。以下是在&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....]