【发布时间】:2011-12-31 03:33:22
【问题描述】:
我正在尝试使用 scrapy 从 arXiv 的页面获取信息,但无法从他们的 xml page 中选择“项目”:
from scrapy.spider import BaseSpider
from scrapy.selector import XmlXPathSelector
class arXivSpider(BaseSpider):
name = "arxiv"
allowed_domains = ["arxiv.org"]
start_urls = ["http://export.arxiv.org/rss/hep-th/recent"]
def parse(self, response):
xxs = XmlXPathSelector(response)
papers = xxs.select('//item')
print papers
item 对象非常简单,如果我可以提取它的话...
<item rdf:about="http://arxiv.org/abs/1112.5754">
<title>blah blah ... blah</title>
<link>http://arxiv.org/abs/1112.5754</link>
<description rdf:parseType="Literal"><p>...</p></description>
<dc:creator>blah, blah blah</dc:creator>
</item>
脚本运行完美,它只是papers = [],所以蜘蛛没有收集item 的。它可能需要使用命名空间...
【问题讨论】:
-
您是否收到任何错误消息?编译错误?运行时错误?
-
它运行......它的“论文”变量只是空数组[]
标签: python xml screen-scraping scrapy