【发布时间】:2016-01-20 02:05:08
【问题描述】:
我又回来问这里的好人了:)
我最近开始重新开始使用 Python(50% 是在 codcademy 完成的,哈哈),并决定制作一个快速脚本,用于在网络上抓取 CAD 中的黄金现货价格。这最终将成为更大脚本的一部分......但我非常生疏,并认为这将是一个很好的项目。
我的问题: 我一直在遵循http://docs.python-guide.org/en/latest/scenarios/scrape/ 的指南来完成我的目标,但是我的脚本总是返回/打印
<Element html at 0xRANDOM>
其中 RANDOM 是(我假设)随机十六进制数。无论我使用什么网站,都会发生这种情况。
我的代码:
#!/bin/python
#Scrape current gold spot price in CAD
from lxml import html
import requests
def scraped_price():
page = requests.get('http://goldprice.org/gold-price-canada.html')
tree = html.fromstring(page.content)
print "The full page is: ", tree #added for debug WHERE ERROR OCCURS
bid = tree.xpath("//span[@id='gpotickerLeftCAD_price']/text()")
print "Scraped content: ", bid
return bid
gold_scraper = scraped_price()
我的研究:
1) www.w3schools.com/xsl/xpath_syntax.asp
这是我想出使用 '//span' 来查找所有 'span' 对象然后使用 @id 将其缩小到我需要的对象的地方。
2)Scraping web content using xpath won't work
这让我觉得我只是有一个糟糕的 tree.xpath 设置。但是我似乎无法弄清楚在哪里或为什么。
任何帮助将不胜感激。
【问题讨论】:
标签: python-2.7 xpath web-scraping