python爬虫学习14
python爬虫学习14
这里写目录标题
- python爬虫学习14
- get 请求
- 简单的GET请求
- 附加信息的GET请求
- 返回值的类型
- 抓取网页
- 抓取二进制数据
- 添加请求头
get 请求
简单的GET请求
# HTTP 中最常见的请求之一就是GET请求,首先首先来详细了解一下利用requests库构建GET请求的方法。# 下面构建一个最简单的请求,请求的链接为 https://www.httpbin.org/get,该网站会判断用户发起的是否为get请求 import requestsresp = requests.get('https://www.httpbin.org/get') print(resp.text)# 可以发现我们成功的发送了请求,返回结果中包含请求头、URL、IP等信息。
运行结果:
附加信息的GET请求
# 附加信息的get请求 # 例如现在要添加两个参数 name 和 ageimport requests # 方法一 直接改造 url url = 'https://www.httpbin.org/get?name=germy&age=25' resp = requests.get(url) print(resp.text)# 方法二 利用字典传参 url = 'https://www.httpbin.org/get' data = {'name': 'germy', 'age': '25' } resp = requests.get(url, params=data) print(resp.text)
运行结果:
不用看了啊,一毛一样
返回值的类型
返回值的类型为 str型 但是实际上这种字符串有一种特殊的格式——json。
# 直接解析结果,得到一个JSON格式的数据,可以直接调用JSON方法 # 返回值的JSON格式 import requestsresp = requests.get('https://www.httpbin.org/get') print(type(resp.text)) # resp.text 的格式是 str json0 = resp.json() print(json0,type(json0),sep='\n') #json0 的格式是 dict
运行结果:
抓取网页
# 直接抓取网页 # 抓取网页 import requests import reurl = 'https://ssr1.scrape.center/' r = requests.get(url) # 使用基本正则表达式来匹配所有标题的内容(后面会介绍到正则表达式的使用) pattern = re.compile('<h2.*?>(.*?)</h2>', re.S) titles = re.findall(pattern, r.text) print(titles)
运行结果:
抓取二进制数据
# 在上面抓取网页时,实际上网页返回给我们的是一个HTML文档,若是想要抓取图片、音频、视频等文件,就要抓取对应的二进制的数据:# 在上面抓取网页时,实际上网页返回给我们的是一个HTML文档,若是想要抓取图片、音频、视频等文件,就要抓取对应的二进制的数据: import requestsurl = 'https://scape.center/favicon.ico' r = requests.get(url) print(r.text) print(r.content)
运行结果:
可以看到我们获得了服务器的响应,但是拿到的却是一堆乱码,它实际上是二进制数据
# 让我们来操作一波 import requestsurl = 'https://scape.center/favicon.ico' r = requests.get(url) # 把我们获取到的数据保存 with open('favicon.ico','wb') as f:f.write(r.content) # 运行之后可以看到当先工作路径下出现了一个新的文件
打开文件:
添加请求头
# 类似于之前 urllib 的添加方式 # 添加请求头 # 添加请求头 以伪装成浏览器发送请求 import requestsurl = 'https://ssr1.scrape.center/' headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 SLBrowser/8.0.0.2242 SLBChan/11'} r = requests.get(url, headers=headers) print(r.text)
运行结果: 总之就是一大串源码
今日结束,未完待续…
python爬虫学习14相关推荐
- python爬虫正则表达式实例-python爬虫学习三:python正则表达式
python爬虫学习三:python正则表达式 1.正则表达式基础 a.正则表达式的大致匹配过程: 1.依次拿出表达式和文本中的字符比较 2.如果每一个字符都能匹配,则匹配成功:一旦有匹配不成功的字符 ...
- Python爬虫学习系列教程
大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己实际写的一些小爬虫,在这里跟大家一同分享,希望对Python爬虫 ...
- 新手python爬虫代码_新手小白必看 Python爬虫学习路线全面指导
爬虫是大家公认的入门Python最好方式,没有之一.虽然Python有很多应用的方向,但爬虫对于新手小白而言更友好,原理也更简单,几行代码就能实现基本的爬虫,零基础也能快速入门,让新手小白体会更大的成 ...
- Python爬虫学习系列教程-----------爬虫系列 你值的收藏
静觅 » Python爬虫学习系列教程:http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把 ...
- Python 爬虫学习 系列教程
Python爬虫 --- 中高级爬虫学习路线 :https://www.cnblogs.com/Eeyhan/p/14148832.html 看不清图时,可以把图片保存到本地在打开查看... Pyth ...
- 从入门到入土:Python爬虫学习|实例练手|爬取LOL全英雄信息及技能||异步加载|初级难度反扒处理|寻找消失的API
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- 从入门到入土:Python爬虫学习|实例练手|详细讲解|爬取腾讯招聘网|一步一步分析|异步加载|初级难度反扒处理|寻找消失的API来找工作吧
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- 从入门到入土:Python爬虫学习|实例练手|爬取猫眼榜单|Xpath定位标签爬取|代码
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- 从入门到入土:Python爬虫学习|实例练手|爬取百度翻译|Selenium出击|绕过反爬机制|
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
最新文章
- ZendFramework的介绍、安装和实例运行
- SpringBoot中通过@Value获取自定义配置的值
- ASP.NET MVC Action向视图传值之匿名类型
- 使用JS实现文字搬运工
- 计算机系统集成难点,企业MES实施中存在的难点及建议
- python编程快速上手第四章_《Python编程快速上手——让繁琐的工作自动化》读书笔记 第四章 列表...
- redis源码剖析(2):基础数据结构ADLIST
- Csharp develop
- android 自定义view 水波纹进度球
- 【语谱图】基于matlab语音信号语谱图【含Matlab源码 137期】
- 1489 数据结构:矩阵鞍点
- VMP学习笔记之壳基础(一)
- Linux内核学习书籍
- 战争调度(树形DP+BFS)
- 网站被黑总被跳转到其他网站的处理解决过程
- 异或为什么满足结合律,布尔代数与布尔环简介
- android手机电话铃声设置,安卓怎么设置铃声 安卓手机铃声设置教程
- 计算机图形学 构成立方体数据结构的简单表结构,计算机图形学-沈工大作业管理ppt课件...
- 进入BeOS的花花世界 系列五
- 智能振弦传感器的读取工具振弦采集仪