登录
首页 >  文章 >  python教程

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

时间:2024-12-13 18:39:56 213浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《CrawlSpider 中 Deny 设置不起作用?如何正确使用 Deny 阻止特定 URL 链接?》,聊聊,我们一起来看看吧!

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/" 的链接。

到这里,我们也就讲完了《CrawlSpider 中 Deny 设置不起作用?如何正确使用 Deny 阻止特定 URL 链接?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>