Python爬虫:requests模块深入及案例

news/2025/2/2 8:13:00/
*   [案例二:输入单词获取百度翻译的结果](about:blank#_40)*   [案例三:获取豆瓣电影的评分前几名的电影信息](about:blank#_87)*   [案例四:通过在药监局网站中的企业id值获取企业信息](about:blank#id_121)

案例一:获取CSDN关键字的搜索结果页面


requests.get(url= ,params= ,headers= )

  • url:请求地址

  • params:url携带的参数,字典类型

指定url发起请求是携带参数的,请求时将params中的字典类型数据转换为url中参数。


import requests# 在CSDN中搜索,参数q为搜索关键字searchURL = 'https://so.csdn.net/so/search'# 处理url携带的参数:封装到字典中keyWord = input('CSDN Search KeyWord is :')param = {# 请求所需的参数,字典类型'q':keyWord}response = requests.get(url=searchURL ,params=param)# 指定url发起请求是携带参数的,请求时将params中的字典类型数据转换为url中参数pageText = response.text# 爬取到的文本数据fileName = keyWord + '.html'with open('./dataFiles/'+fileName,'w',encoding='utf-8') as fp:fp.write(pageText)# 生成以关键字命名的html文件

在这里插入图片描述

案例二:输入单词获取百度翻译的结果


在这里插入图片描述在这里插入图片描述

检查网页可知,百度翻译的请求方式为post,需要用到requests.post()。关键字为data里面的kw。

requests.post(url= ,data= ,headers= )

  • url:请求页面

  • data:关键字,字典类型

  • headers:头信息,字典类型,用于UA伪装


# 百度翻译# - post请求# - 响应数据是JSON格式import requestsimport jsonpostURL = 'https://fanyi.baidu.com/sug'# UA伪装postHeader = {'User-Agent': '来自网页检查'}# 参数处理data = {'kw': 'baby'# post请求的参数数据与get一致,与get方法不同的是不显示在地址栏,可以通过检查查看# kw为网址指定的参数名,若修改则发生未知错误}# 发送请求response = requests.post(url=postURL, data=data, headers=postHeader)# 获取响应数据,json格式dataObj = response.json()print(dataObj)# 存储jsonFilePath = open('./dataFiles/dog.json', 'w', encoding='utf-8')json.dump(dataObj, fp=jsonFilePath, ensure_ascii=False)print('Over!')

在这里插入图片描述

案例三:获取豆瓣电影的评分前几名的电影信息


方法与上面两个案例类似,直接看代码


# 获取豆瓣电影排行榜信息import requestsimport jsondoubanURL = 'https://movie.douban.com/j/chart/top_list?'# url地址doubanParam = {#参数'type_name':'喜剧','type': 24,'interval_id': '100:90','start':'1',   # 从第几部电影开始取'limit':'10'    # 取出的个数}doubanHeader = {# 头信息,用于UA伪装'User-Agent':'来自网页检查'}response = requests.get(url=doubanURL ,params=doubanParam ,headers=doubanHeader)print(response.json())fp = open('./dataFiles/doubanTop10.json','w',encoding='utf-8')json.dump(response.json(),fp=fp,ensure_ascii=False)print('Over.....')

在这里插入图片描述

案例四:通过在药监局网站中的企业id值获取企业信息



http://www.ppmy.cn/news/1568640.html

相关文章

如何写美赛(MCM/ICM)论文中的Summary部分

美赛(MCM/ICM)作为一个数学建模竞赛,要求参赛者在有限的时间内解决一个复杂的实际问题,并通过数学建模、数据分析和计算机模拟等手段给出有效的解决方案。在美赛的论文中,Summary部分(通常也称为摘要)是非常关键的,它是整个论文的缩影,能让评审快速了解你解决问题的思…

JavaScript前后端交互-AJAX/fetch

摘自千峰教育kerwin的js教程 AJAX 1、AJAX 的优势 不需要插件的支持,原生 js 就可以使用用户体验好(不需要刷新页面就可以更新数据)减轻服务端和带宽的负担缺点: 搜索引擎的支持度不够,因为数据都不在页面上&#xf…

对比DeepSeek、ChatGPT和Kimi的学术写作摘要能力

摘要 摘要是文章的精华,通常在200-250词左右。要包括研究的目的、方法、结果和结论。让AI工具作为某领域内资深的研究专家,编写摘要需要言简意赅,直接概括论文的核心,为读者提供快速了解的窗口。 下面我们使用DeepSeek、ChatGPT…

数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)

数据库管理287期 2025-01-24 数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)1 AI向量搜索:算术和聚合运算2 更改Compatible至23.6.0,以使用23.6或更高版本中的新AI向量搜索功能3 Cloud Developer包4 DBMS_DEVELOPER.GET_…

Redis-布隆过滤器

文章目录 布隆过滤器的特点:实践布隆过滤器应用 布隆过滤器的特点: 就可以把布隆过滤器理解为一个set集合,我们可以通过add往里面添加元素,通过contains来判断是否包含某个元素。 布隆过滤器是一个很长的二进制向量和一系列随机映射函数。 可以用来检索…

QT简单实现验证码(字符)

0) 运行结果 1) 生成随机字符串 Qt主要通过QRandomGenerator类来生成随机数。在此之前的版本中,qrand()函数也常被使用,但从Qt 5.10起,推荐使用更现代化的QRandomGenerator类。 在头文件添加void generateRandomNumb…

vim操作简要记录

操作容易忘记,记录一下基本使用的 :wq保存退出 :w :q :q! :wq! i I a A 方向键 h左 j下 k上 l右 dd删除方行(这其实是剪切行操作,不过一般用作删除,长按可删除,不过按.执行上一次操作删除更快) .执行上…

Spring MVC消息转换器

在Spring MVC框架中,extendMessageConverters 通常与消息转换器(Message Converters)相关。消息转换器是Spring MVC用于将HTTP请求和响应主体(body)转换为Java对象和字符串的组件。它们在处理不同的媒体类型&#xff0…