Scrapy - 警告:远程证书对主机名无效

时间:2017-09-28 10:42:04

标签: scrapy certificate-error

我正在使用带有LinkExtractor对象的CrawlSpider来抓取主页上的下一页和其他链接。我有两个链接提取器;一个用于抓取下一个页面,另一个用于抓取一些链接事件(参见下面的蜘蛛代码)。

我的第二个linkExtractor工作(事件链接),但第一个没有 当我启动我的蜘蛛时,我的堆栈跟踪中出现了这个错误:

[scrapy] WARNING: Remote certificate is not valid for hostname "marathons.ahotu.fr"; u'ssl390453.cloudflaressl.com'!=u'marathons.ahotu.fr'

其实我是Python和Scrapy的新手,所以我的问题是:

  • 这是什么意思?
  • 我该如何解决?

这是我的蜘蛛代码:

import scrapy
import os
import re
from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
from scrapy.selector import Selector

if os.path.isfile('ListeCAP_Marathons_ahotu.csv'):
    reecritureFichier = open('ListeCAP_Marathons_ahotu.csv', 'w')
    reecritureFichier.truncate()
    reecritureFichier.close()

class MySpider(CrawlSpider):
    name = 'ListeCAP_Marathons_ahotu'
    start_urls = ['https://marathons.ahotu.fr/calendrier']

    rules = (
        # LINKEXTRACTOR N°1 = NEXT PAGES
        Rule(LinkExtractor(allow=('https://marathons.ahotu.fr/calendrier?page=[0-9]{1,100}#list-top',),),),

        # LINKEXTRACTOR N°2 = EVENTS LINKS
        Rule(LinkExtractor(allow=('https://marathons.ahotu.fr/evenement/.+',),),follow=True,callback='parse_item'),      
    )     

    def parse_item(self, response):  
        selector = Selector(response)
        yield{
            'nom_even':selector.xpath('/html/body/div[2]/div[2]/h1/span[@itemprop="name"]/text()').extract(),
    }    

        print('--------------------> NOM DE L\'EVENEMENT :', selector.xpath('//*[@id="jog"]/div[2]/section/article/header/h1/text()').extract())

(我正在使用带有Twisted-17.9.0的Scrapy 1.4.0)

1 个答案:

答案 0 :(得分:0)

您无法解决此类错误。您可以做的最好的事情是向域管理员发送消息,让他/她知道证书有问题(在这种情况下,证书是针对其他域而不是marathons.arotu.fr)。