我正在尝试从 API 中抓取多个页面来练习和开发我的 XML 抓取。出现的一个问题是,当我尝试抓取格式如下的文档:http: //i.imgur.com/zJqeYvG.png并将其存储为 XML 时,它无法这样做。
因此,在 CMD 中,它会获取在我的计算机上创建 XML 文件的 URL,但其中没有任何内容。
我将如何修复它以回显整个文档甚至部分文档?
我把代码放在下面:
from scrapy.spider import BaseSpider
from scrapy.selector import XmlXPathSelector
from doitapi.items import DoIt
import random
class MySpider(BaseSpider):
name = "craig"
allowed_domains = ["do-it.org.uk"]
start_urls = []
number = []
for count in range(100):
number.append(random.randint(2000000,2500000))
for i in number:
start_urls.append("http://www.do-it.org.uk/syndication/opportunities/%d?apiKey=XXXXX-XXXX-XXX-XXX-XXXXX" %i)
def parse(self, response):
xxs = XmlXPathSelector(response)
titles = xxs.register_namespace("d", "http://www.do-it.org.uk/volunteering-opportunity")
items = []
for titles in titles:
item = DoIt()
item ["url"] = response.url
item ["name"] = titles.select("//d:title").extract()
item ["description"] = titles.select("//d:description").extract()
item ["username"] = titles.select("//d:info-provider/name").extract()
item ["location"] = titles.select("//d:info-provider/address").extract()
items.append(item)
return items