小黑资源网 手游攻略 软件教程 Python爬虫入门(四):实战,爬取4399个小游戏首页

Python爬虫入门(四):实战,爬取4399个小游戏首页

时间:2024-11-13 13:51:51 来源:互联网 浏览:0

robots.txt

robots.txt是指存储在网页根目录下的文件。广义上,也指互联网上的机器人协议。

robots协议

机器人协议代表机器人排除协议。这个协议告诉网络爬虫哪些网站可以爬行,哪些爬虫可以爬行这个网站。 robots协议是通过在网站根目录下放置一个robots.txt(全小写)文件来实现的。

robots.txt 语法

robots.txt 文件非常直观,每行一条规则。这里简单介绍一下,只要读者基本能看懂robots.txt即可(其实网上有很多生成robots.txt的工具,即使你想写robots.txt也不需要学习它们全部,只需看看您需要使用什么))。

-User-Agent:允许访问的搜索引擎爬虫的名称,如果有多个部分,就是关于这个爬虫的规则。因此,所有爬虫都可以访问它。

-Disallow:不允许访问的目录名,以/开头,该目录下的所有链接都被阻止。如果是特定网页,则该网页被屏蔽。如果只有一个/,则所有链接都被屏蔽。

Python爬虫入门(四):实战,爬取4399个小游戏首页

- 允许:与禁止规则相反。

-站点地图:爬虫可以爬取的其他无法从网站直接访问的链接和相关信息。

-crawl-delay:抓取延迟,抓取之间等待的秒数。 (好像已经不支持了)

君子协定

可见robots协议只是告诉爬虫哪些网站不能爬行,并没有真正起到阻止爬虫的作用。其实排除爬虫的方法有一些,比如检查UA头、高频访问弹出验证界面、验证码(非机器人验证,谷歌最不喜欢这个)、使用Ajax等.但是这些方法要么阻碍了爬虫的爬行能力,要么甚至妨碍了真正的用户。

为了用户、服务器和搜索爬虫的共同利益,robots协议实际上是服务器和搜索引擎之间遵守的君子协议。因此,很多规则的使用实际上取决于各大搜索引擎(例如Request-rate几乎不被搜索引擎识别),而robots协议的语法也在不断变化。

希望看到这里的读者也能遵守机器人协议,技术应该向上使用。

何时需要robots协议?

Python爬虫入门(四):实战,爬取4399个小游戏首页

显然,需要的时候就用它。当您不希望某些爬虫访问某些页面时,机器人协议会派上用场。比如百度的robots协议其实是禁止360的爬虫的(我大胆推测,因为很多爬虫都写了但360没有写,而百度的robots.txt好像一年前就这样了,360写得很慷慨)。如果你想让爬虫爬取你网站的所有内容,最好不要直接使用robots协议。

查看4399.com的robots.txt

4399的robots.txt文件如下:

用户代理: *Disallow: /upload_pic/Disallow: /upload_swf/Disallow: /360/Disallow: /public/Disallow: /yxbox/Disallow: /360game/Disallow: /baidugame/Disallow: /loadimg/Disallow: /index_pc.ht mDis允许: /flash/32979_pc.htmDisallow: /flash /35538_pc.htmDisallow: /flash/48399_pc.htmDisallow: /flash/seer_pc.htmDisallow: /flash/58739_pc.htmDisallow: /flash/78072_pc.htmDisallow: /flash/130396_pc.htmDisallow 3 3360 /flash/80727_pc.htmDisallow: /flash/151038_pc.htmDisallow: /flash/10379_pc。 htmDisallow: /flash/188528_pc.htmDisallow: /flash/*_pc.htmDisallow: /index_old.htmDisallow: /flash/188420_2.htmDisallow: /flash/188420.htmDisallow: /zzy/188420.htm Disallow: /flash/209902.htm 第一个可以看到4399 line 网站允许所有爬虫。由于我们只爬取首页,所以下面就不用详细看Disallow了,只要不带/即可(其实4399并没有拦截UA头,不知道爬取频率是否有限制,我想不是)。

那么我们就可以开始分析4399的主页了。

设定并分析目标

2020年8月25日4399网站首页如图所示。我们暂时将目标设置为大红圈内的部分来获取文本内容和链接:

F12查看源码,发现这个范围的源码就在上图小方框内,只有一个class是middle_2。我们需要的一切都在叶节点的跨度内。分析这段代码的DOM,绘制如图所示。

用户评论

高冷低能儿

太赞了!通过练习使用Python爬虫,我成功地爬取了4399小游戏首页的游戏列表,学习过程既有趣又有挑战。

    有11位网友表示赞同!

鹿叹

教程对初学者非常友好,循序渐进地介绍了Python爬虫的基础知识和实际应用,实操很给力。

    有18位网友表示赞同!

南宫沐风

跟着这个系列视频深入研究后,我开始明白网页数据抓取的奥妙,4399游戏首页也成了我练手的好资料库。

    有20位网友表示赞同!

沐晴つ

教程中对于HTML解析的部分很详细,让我在爬取4399游戏页面时更加得心应手。

    有6位网友表示赞同!

箜篌引

通过实战项目,我学会了一些小技巧和工具使用,感觉对爬虫的了解不仅是在理论层面,更有了实际行动的经验。

    有5位网友表示赞同!

眉黛如画

感谢这个Python爬虫入门教程系列,爬4399小游戏首页让我对互联网数据收集的技术充满兴趣。

    有6位网友表示赞同!

爱你心口难开

学习到的关键点:CSS选择器的巧妙用法在解析复杂网页结构时非常有用,尤其针对像4399这样的页面。

    有12位网友表示赞同!

殃樾晨

虽然一开始在爬取动态加载内容上遇到了困难,但教程引导我如何借助Selenium解决这一问题,很实用!

    有19位网友表示赞同!

断桥残雪

教程中的Python代码注释清晰,很容易跟着一步步操作,对新手而言是一个很好的起点。

    有15位网友表示赞同!

疲倦了

实践爬4399小游戏的体验让我更理解网络数据抓取的复杂性与魅力,挑战越大成就感越足。

    有7位网友表示赞同!

柠夏初开

借助这个教程,我不仅学到了实用的技术技能,也感受到编程解决问题的乐趣。

    有9位网友表示赞同!

顶个蘑菇闯天下i

对于网页结构不是特别了解的我来说,课程讲解一步步深入HTML和CSS解析逻辑,使爬取4399游戏信息变得容易上手。

    有19位网友表示赞同!

闷骚闷出味道了

教程中提到的一些技巧,如避免过度依赖IP屏蔽、合理设置代理等,在我实际操作过程中发挥了大作用。

    有9位网友表示赞同!

千城暮雪

跟着这个系列做下来的爬虫项目,让我对互联网数据收集的必要性和局限性有了更深的认识

    有5位网友表示赞同!

灬一抹丶苍白

课程最后推荐了一些工具和资源,帮助我在完成4399游戏页面抓取后还能进一步提升技能。

    有18位网友表示赞同!

刺心爱人i

通过这个教学视频的学习,我增强了编程自我学习的能力,觉得每一步进步都很有价值。

    有11位网友表示赞同!

强辩

爬取4399小游戏首页的游戏列表时,我还学到了如何进行数据清洗和整理,为后续的数据分析打下了基础。

    有10位网友表示赞同!

◆残留德花瓣

此课程不仅让我熟悉了Python的语法在实际场景中的应用,还激发了对进一步探索爬虫更深层次的兴趣。

    有14位网友表示赞同!

红玫瑰。

实战部分的指导让我深刻体验到理论学习到实战落地的过程,并且在这个过程中也发现了自己对编程的热爱。

    有13位网友表示赞同!

一生荒唐

通过这个教程,我对如何优雅地处理网络请求和响应有了更深的理解,对于处理4399游戏数据更加得心应手。

    有5位网友表示赞同!

标题:Python爬虫入门(四):实战,爬取4399个小游戏首页
链接:https://www.gbbxw.com/news/rj/19458.html
版权:文章转载自网络,如有侵权,请联系删除!
资讯推荐
更多
做超声检查时,医生为什么要在患者肚子上涂粘粘的东西

做B超为什么要涂凝胶?在支付宝蚂蚁庄园每日一题中,2021年4月9日的问题是问做超声检查时,医生为什么要在患者肚

2024-11-13
小米mix fold有前置摄像头吗

小米mix fold有前置摄像头吗?作为小米的第一款折叠屏手机,这款手机可以说实话非常的强大,但是很多网友还是想要

2024-11-13
蚂蚁庄园4月10日答案最新

蚂蚁庄园4月10日答案最新是什么?在支付宝蚂蚁庄园每日一题中,你知道蚂蚁庄园2021年4月10日答案是什么吗?该怎么

2024-11-13
蚂蚁庄园4月13日答案最新

支付宝蚂蚁庄园今日答题答案是什么?在支付宝蚂蚁庄园每日一题中,每天都会刷新出现多个题目等待大家来回答,回答

2024-11-13