我一直在浏览Scrapy
示例并且它们是有意义的,但是一旦我在新闻Feed上尝试它我就什么都得不到除了头衔而且不知道怎么做继续进行。
scrapy shell http://feeds.bbci.co.uk/news/rss.xml
我能从中获得的是
response.xpath('//title')
哪个输出
<Selector xpath='//title' data=u'<title xmlns:media="http://search.yahoo.'>]
我怎样才能在里面找到标签?
当我尝试这个时:
response.xpath('//div')
它返回null。我已经尝试过检查Chome中的元素来检查内容,但我不知道怎么能到身体去试试。感谢
答案 0 :(得分:2)
rss
不是html
文档,而是xml
文档。您可以在http://www.w3schools.com/xml/xml_rss.asp找到关于rss
的信息。 rss
文档类似于:
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>W3Schools Home Page</title>
<link>http://www.w3schools.com</link>
<description>Free web building tutorials</description>
<item>
<title>RSS Tutorial</title>
<link>http://www.w3schools.com/rss</link>
<description>New RSS tutorial on W3Schools</description>
</item>
<item>
<title>XML Tutorial</title>
<link>http://www.w3schools.com/xml</link>
<description>New XML tutorial on W3Schools</description>
</item>
</channel>
</rss>
因此其中没有div
个标签。要获得每篇帖子/新闻的说明,您可以使用response.xpath('//description/text()')
Scrapy docs可以在http://doc.scrapy.org/en/latest/intro/tutorial.html
找到