我试图用scrapy从arXiv的页面获取信息,但无法从它们的xml page中选择“items”:
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对象非常简单,如果我可以提取它。。。在
^{pr2}$脚本运行得很好,只是papers = []
,所以spider没有收集item
的。它可能需要使用名称空间。。。在
是的。在
XmlXPathSelector可以通过注册名称空间(examples in documentation)来处理名称空间。在您的情况下:
我觉得你应该试试你那破破烂烂的壳,做实验。 1破壳“http://export.arxiv.org/rss/hep-th/recent”
在sel.remove_名称空间()
a=选择xpath('//title/text()')
相关问题 更多 >
编程相关推荐