一些碎碎念~
⛳ 你好哇,我是小瑾,在校大学生一位哦~
⛵目前博文包含课程设计、csp刷题、算法介绍、当下科技热点分享、网站软件推荐等等哦,还会更新学习到的深度学习、视觉等方面的知识~
⛄一个希望与大家携手共进的小博主
✍关注我,让你的代码之旅不再孤独
requests介绍
☔️
requests
库是Python中用于发送HTTP请求的第三方库,设计简单易用,能处理复杂的HTTP操作,如GET、POST、PUT、DELETE等请求。它简化了HTTP请求的发送和响应的处理,使得与Web服务和API的交互变得非常容易。
使用前的准备
✅ 1.下载pycharm(或者其他python编辑器)
✅ 2.打开终端
✅ 3.输入:pip install requests
代码实战:
题目描述:利用爬虫库requests、正则表达式解析库re和纯文本txt完成编程任务,任务是爬取豆瓣排行榜的电影名称,分为三个步骤:
(1)第一步数据爬取,通过requests爬取豆瓣排行榜的电影名称数据;本步骤实验说明如下:
爬取网址url=”https://movie.douban.com/chart”
浏览器用户代理”User-Agent”:”Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebkit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.39”
说明:不同机器安装的浏览器用户代理也不一样,需要打开网址后,通过F12键打开开发工具查看URL和User-Agent。
(2)第二步数据解析,通过正则表达式re解析豆瓣排行榜的电影名称数据;
本步骤解析数据参考正则表达式是:re.compile(’<a.*?nbg.*?title=”(.*?)”>’,re.S) 是匹配以 "<a" 开头、以 "nbg" 为属性值的 HTML 标签,并提取属性 title 的值作为捕获组,其中 "?" 表示非贪心匹配,re.S 表示 "." 匹配所有字符,包括换行符。
(3)第三步存储数据,通过纯文本存储豆瓣排行榜的电影名称数据。
import requests
import re
url='https://moive.douban.com/chart'
headers={'User-Agent':'Mozilla/5.0(Windows NT 10.0; Win64; x64'+\
'AppleWebKit/537.36(KHTML, like Gecko)'+\
'Chrome/99.0.4844.51'+\
'Safari/537.36'+\
'Edg/99.0.1150.39'}
response=requests.get(url,headers=headers)
html_str=response.text
pattern=re.compile('<a.*?nbg.*?title="(.*?)">',re.S)
items=re.findall(pattern,html_str)
with open('douban.txt','w',encoding='utf-8') as f:
for item in items:
f.write(item+'\n')
print("ok")