gpt4 book ai didi

python - Scrapy 给出 URLError :

转载 作者:太空狗 更新时间:2023-10-29 21:14:41 27 4
gpt4 key购买 nike

所以我有一个 scrapy 程序,我正试图启动它,但我无法让我的代码执行它,它总是出现以下错误。

我仍然可以使用 scrapy shell 命令访问该站点,所以我知道 Url 和其他内容都可以正常工作。

这是我的代码

from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
from Malscraper.items import MalItem

class MalSpider(CrawlSpider):
name = 'Mal'
allowed_domains = ['www.website.net']
start_urls = ['http://www.website.net/stuff.php?']
rules = [
Rule(LinkExtractor(
allow=['//*[@id="content"]/div[2]/div[2]/div/span/a[1]']),
callback='parse_item',
follow=True)
]

def parse_item(self, response):
mal_list = response.xpath('//*[@id="content"]/div[2]/table/tr/td[2]/')

for mal in mal_list:
item = MalItem()
item['name'] = mal.xpath('a[1]/strong/text()').extract_first()
item['link'] = mal.xpath('a[1]/@href').extract_first()

yield item

编辑:这是痕迹。

Traceback (most recent call last):
File "C:\Users\2015\Anaconda\lib\site-packages\boto\utils.py", line 210, in retry_url
r = opener.open(req, timeout=timeout)
File "C:\Users\2015\Anaconda\lib\urllib2.py", line 431, in open
response = self._open(req, data)
File "C:\Users\2015\Anaconda\lib\urllib2.py", line 449, in _open
'_open', req)
File "C:\Users\2015\Anaconda\lib\urllib2.py", line 409, in _call_chain
result = func(*args)
File "C:\Users\2015\Anaconda\lib\urllib2.py", line 1227, in http_open
return self.do_open(httplib.HTTPConnection, req)
File "C:\Users\2015\Anaconda\lib\urllib2.py", line 1197, in do_open
raise URLError(err)
URLError: <urlopen error timed out>

编辑2:

因此,通过 scrapy shell 命令,我能够操纵我的响应,但我只是注意到在访问该站点时再次出现完全相同的错误

编辑3:

我现在发现错误出现在我使用 shell 命令 的每个网站上,但我仍然能够操纵响应。

编辑4:那么,在运行 crawl 命令 时,如何验证我至少收到了 Scrapy 的响应?现在我不知道是我的代码导致我的日志变成空的还是错误?

这是我的settings.py

BOT_NAME = 'Malscraper'

SPIDER_MODULES = ['Malscraper.spiders']
NEWSPIDER_MODULE = 'Malscraper.spiders'
FEED_URI = 'logs/%(name)s/%(time)s.csv'
FEED_FORMAT = 'csv'

最佳答案

这个问题有一个开放的 scrapy 问题:https://github.com/scrapy/scrapy/issues/1054

虽然在其他平台上好像只是警告

您可以通过添加到您的 scrapy 设置来禁用 S3DownloadHandler(导致此错误的原因):

DOWNLOAD_HANDLERS = {
's3': None,
}

关于python - Scrapy 给出 URLError : <urlopen error timed out>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31048130/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com