【发布时间】:2015-12-24 07:14:11
【问题描述】:
我正在使用 Scrapyto 抓取德国论坛:http://www.musikerboard.de/forum
它跟踪所有子论坛并从线程中提取信息。
问题:在抓取过程中,我在多个线程链接上出现错误:
2015-09-26 14:01:59 [scrapy] DEBUG: Ignoring response <404 http://www.musiker-board.de/threads/spotify-premium-paket.621224/%0A%09%09>: HTTP status code is not handled or not allowed
除了/%0A%09%09这一部分之外,URL都很好
它给出了 404 错误。
我不知道为什么程序一直在 URL 的末尾添加代码
这是我的代码:
def urlfunc(value):
value = value.replace("%0A", "")
value = value.replace("%09", "")
return value
class spidermider(CrawlSpider):
name = 'memberspider'
allowed_domains = ["musiker-board.de"]
start_urls = ['http://www.musiker-board.de/forum/'
# 'http://www.musiker-board.de/'
] # urls from which the spider will start crawling
rules = (
Rule(LinkExtractor(allow=(r'forum/\w*',))),
Rule(LinkExtractor(allow=(r'threads/\w+',),deny=(r'threads/\w+/[\W\d]+'),process_value=urlfunc), callback='parse_thread' ),
)
有人解释为什么它会一直发生吗?(以及解决方案)
编辑: 更新代码
【问题讨论】:
标签: url web-scraping scrapy http-status-code-404