beautifulsoup

[Python从零到壹] 四.网络爬虫之入门基础及正则表达式抓取博客案例

旧巷老猫 提交于 2020-10-31 10:00:41
欢迎大家来到“Python从零到壹”,在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界。所有文章都将结合案例、代码和作者的经验讲解,真心想把自己近十年的编程经验分享给大家,希望对您有所帮助,文章中不足之处也请海涵。 Python系列整体框架包括基础语法10篇、网络爬虫30篇、可视化分析10篇、机器学习20篇、大数据分析20篇、图像识别30篇、人工智能40篇、Python安全20篇、其他技巧10篇。您的关注、点赞和转发就是对秀璋最大的支持,知识无价人有情,希望我们都能在人生路上开心快乐、共同成长。 本文参考了作者CSDN的文章,链接如下: https://blog.csdn.net/Eastmount https://github.com/eastmountyxz/Python-zero2one 同时,作者新开的“娜璋AI安全之家”将专注于Python和安全技术,主要分享Web渗透、系统安全、人工智能、大数据分析、图像识别、恶意代码检测、CVE复现、威胁情报分析等文章。虽然作者是一名技术小白,但会保证每一篇文章都会很用心地撰写,希望这些基础性文章对你有所帮助,在Python和安全路上与大家一起进步。 文章目录 一.什么是网络爬虫 二.正则表达式 1.re模块 2.complie方法 3.match方法 4.search方法 5

手把手教你使用Python抓取QQ音乐数据(第一弹)

孤人 提交于 2020-10-29 05:10:43
点击上方“ IT共享之家 ”,进行关注 回复“ 资料 ”可获赠Python学习福利 【一、项目目标】 获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名、专辑名、播放链接。 由浅入深,层层递进,非常适合刚入门的同学练手。 【二、需要的库】 主要涉及的库有:requests、json、openpyxl 【三、项目实现】 1.了解 QQ 音乐网站的 robots 协议 只禁止播放列表,可以操作。 2.进入 QQ 音乐主页 https://y.qq.com/ 3.输入任意歌手,比如邓紫棋 4.打开审查元素(快捷键 Ctrl+Shift+I) 5.分析网页源代码 Elements,发现无歌曲信息,无法使用 BeautifulSoup,如下图所示,结果为空。 6.点击 Network,看数据在不在 XHR(无刷新更新页 面),我的经验是先看 Size 最大的,然后分析 Name, 查看 Preview,果然在里面! 7.点击 Headers,拿到相关参数。如下图,仔细观察 url 与 Query String Parameters 参数的关系,发现 url 中的 w 代表歌手名,p 代表页数。 8.通过 json 代码实现,首先小试牛刀,爬取第一页 的数据,url 直接复制过来。成功! 9.引入 params 参数,实现指定歌手、指定页数的查询。 注意代码url为上一步url中“?

手把手教你使用Python抓取QQ音乐数据(第一弹)

|▌冷眼眸甩不掉的悲伤 提交于 2020-10-29 04:45:25
点击上方“ IT共享之家 ”,进行关注 回复“ 资料 ”可获赠Python学习福利 【一、项目目标】 获取 QQ 音乐指定歌手单曲排行指定页数的歌曲的歌名、专辑名、播放链接。 由浅入深,层层递进,非常适合刚入门的同学练手。 【二、需要的库】 主要涉及的库有:requests、json、openpyxl 【三、项目实现】 1.了解 QQ 音乐网站的 robots 协议 只禁止播放列表,可以操作。 2.进入 QQ 音乐主页 https://y.qq.com/ 3.输入任意歌手,比如邓紫棋 4.打开审查元素(快捷键 Ctrl+Shift+I) 5.分析网页源代码 Elements,发现无歌曲信息,无法使用 BeautifulSoup,如下图所示,结果为空。 6.点击 Network,看数据在不在 XHR(无刷新更新页 面),我的经验是先看 Size 最大的,然后分析 Name, 查看 Preview,果然在里面! 7.点击 Headers,拿到相关参数。如下图,仔细观察 url 与 Query String Parameters 参数的关系,发现 url 中的 w 代表歌手名,p 代表页数。 8.通过 json 代码实现,首先小试牛刀,爬取第一页 的数据,url 直接复制过来。成功! 9.引入 params 参数,实现指定歌手、指定页数的查询。 注意代码url为上一步url中“?

爬虫技术初窥

给你一囗甜甜゛ 提交于 2020-10-28 17:59:27
什么是爬虫 网络爬虫是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。 举个例子,用户浏览豆瓣时,作为活生生的人看到的是带有样式的HTML。 爬虫看到的仅仅是HTML的文本内容。 爬虫就是将这些标签里的内容提取出来而已。它要做的事情非常的简单。但是实现起来需要挺多的步骤。 URL代表着什么 URL全称统一资源定位符,在它的背后基本上有两种可能:1.一个固定的页面 2. 一个处理请求的程序(如servlet)。故当访问一个URL时,爬虫需要解析的可能是页面或者是json数据。(当然也有可能是类似json的其他格式化数据) 用代码发送HTTP请求 日常生活中,浏览器是访问互联网的工具。它替我们完成了一次次的HTTP请求,服务器在接收到请求后,就是返回响应的内容给浏览器。像一张HTML页面,返回过来之后,在浏览器中进行解析,最后得到平时看到的页面。 那么想想一下一个没有界面的浏览器,并且接收的response也不会解析成好看的网页,只是输出单纯的HTML代码。这就是用代码发送请求,进而获得response的过程。 对返回的HTML代码进行处理 public void parseDemo(){ HttpResponse response = HttpRequest.request("http://www.baidu.com"); } 模拟一个获取response的代码