CrawlSpider 中 Deny 设置不起作用?如何正确使用 Deny 阻止特定 URL 链接?

ID:20291 / 打印

crawlspider 中 deny 设置不起作用?如何正确使用 deny 阻止特定 url 链接?

scrapy crawlspider 中 deny 设置不起作用?

在 crawlspider 中,deny 设置可用于阻止爬取特定 url 链接。然而,根据提供的代码片段,deny 设置似乎没有正常工作,仍然爬取了包含 "guba" 的链接。

此问题可能是由于以下原因造成的:

deny 参数不是正则表达式

deny 参数必须是正则表达式,否则只有 url 完全匹配才可以被阻止。代码片段中使用的字符串不是正则表达式,因此它将只阻止完全匹配这些字符串的 url。

为了解决这个问题,需要将 deny 参数中的字符串修改为正则表达式。例如:

deny=(r'guba', r'data', r'fund.*.eastmoney.com/d+.html', r'.*so.eastmoney.*', r'/gonggao/')

这样一来,代码将阻止包含 "guba"、"data"、符合正则表达式 "fund..eastmoney.com/d+.html"、符合正则表达式 ".so.eastmoney.*" 和 "/gonggao/" 的链接。

上一篇: 为什么反爬虫在当今互联网环境中如此困难?
下一篇: Python中如何将空值正确插入PostgreSQL数据库?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。