Web scraping 使用Scrapy从wikipedia中抓取数据-为什么/何时由于处理URL而发生错误?

Web scraping 使用Scrapy从wikipedia中抓取数据-为什么/何时由于处理URL而发生错误?,web-scraping,wikipedia,Web Scraping,Wikipedia,我刚刚开始使用刮痧,我正在学习如何使用它。请有人解释一下为什么我的代码中有一个错误,这个错误是什么?此错误是否与我提供的无效URL有关,和/或是否与无效XPath连接 这是我的密码: from scrapy.spider import Spider from scrapy.selector import Selector class CatswikiSpider(Spider): name = "catswiki" allowed_domains = ["http://en.w

我刚刚开始使用刮痧,我正在学习如何使用它。请有人解释一下为什么我的代码中有一个错误,这个错误是什么?此错误是否与我提供的无效URL有关,和/或是否与无效XPath连接

这是我的密码:

from scrapy.spider import Spider
from scrapy.selector import Selector

class CatswikiSpider(Spider):
    name = "catswiki"
    allowed_domains = ["http://en.wikipedia.org/wiki/Cat‎"]
    start_urls = [
        "http://en.wikipedia.org/wiki/Cat‎"

    ]

    def parse(self, response):
        sel = Selector(response)
        sites = sel.xpath('//body/div')
        for site in sites:
            title = ('//h1/span/text()').extract()
            subtitle = ('//h2/span/text()').extract()
            boldtext = ('//p/b').extract()
            links = ('//a/@href').extract()
            imagelinks = ('//img/@src').re(r'.*cat.*').extract()
            print title, subtitle, boldtext, links, imagelinks


        #filename = response.url.split("/")[-2]
        #open(filename, 'wb').write(response.body)
以下是一些附件,显示了命令提示符中的错误:


在提取所有
行之前,需要进行函数调用。我不熟悉scrapy,但它可能是:

title = site.xpath('//h1/span/text()').extract()

维基百科已经承受了沉重的负担,你甚至不应该在维基百科上测试刮擦。@Mahdi:我只是在寻找我的路,我很乐意在其他地方刮擦。我想知道维基百科是否会阻止机器人?在发表这篇评论时,已经有四(五分之一)投票支持将其迁移到堆栈溢出。当这种情况发生时,问题、答案和评论都会移到那里。(这被称为迁移)。太好了,谢谢。@Mahdi他们不会阻挡机器人。但它们确实不鼓励刮去正常的页面,应该改用。