我使用scrapy抓取网页,该网页有10个以上的链接使用| LinkExtractor进行抓取,一切正常但在抓取提取的链接时我需要获取页面网址。我没有别的方法来获取网址,但使用
response.request.url
如何将该值分配给
il.add_xpath('url', response.request.url)
如果我这样做,我会收到错误:
File "C:\Python27\lib\site-packages\scrapy\selector\unified.py", line
100, in xpath
raise ValueError(msg if six.PY3 else msg.encode("unicode_escape"))
exceptions.ValueError: Invalid XPath: http://www.someurl.com/news/45539/
title-of-the-news
对于描述,它就像这样(仅供参考):
il.add_xpath('descrip', './/div[@class="main_text"]/p/text()')
由于
答案 0 :(得分:1)
加载程序有两种向项添加属性的方法,并且使用add_xpath
和add_value
,因此您应该使用以下内容:
...
il.add_value('url', response.url) # yes, response also has the url attribute