10个python爬虫入门实例(小结)
这篇文章主要介绍了10个python爬虫入门实例(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例
涉及主要知识点:
- web是如何交互的
- requests库的get、post函数的应用
- response对象的相关函数,属性
- python文件的打开,保存
代码中给出了注释,并且可以直接运行哦
如何安装requests库(安装好python的朋友可以直接参考,没有的,建议先装一哈python环境)
windows用户,Linux用户几乎一样:
打开cmd输入以下命令即可,如果python的环境在C盘的目录,会提示权限不够,只需以管理员方式运行cmd窗口
|
1
|
pip install
-``i https:``/``/``pypi.tuna.tsinghua.edu.cn``/``simple requests
|
Linux用户类似(ubantu为例): 权限不够的话在命令前加入sudo即可
|
1
|
sudo
pip
install
-i https:``//pypi``.tuna.tsinghua.edu.cn``/simple
requests
|
1.爬取强大的BD页面,打印页面信息
# 第一个爬虫示例,爬取百度页面
import
requests
#导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.get(``"[http://www.baidu.com](http://www.baidu.com/)"``)
#生成一个response对象
response.encoding
=
response.apparent_encoding
#设置编码格式
print``(``"状态码:"``+
str``( response.status_code ) )
#打印状态码
print``(response.text)``#输出爬取的信息
|
2.常用方法之get方法实例,下面还有传参实例
# 第二个get方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.get(``"[http://httpbin.org/get](http://httpbin.org/get)"``)
#get方法
print``( response.status_code )
#状态码
print``( response.text )
|
3. 常用方法之post方法实例,下面还有传参实例
|
# 第三个 post方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.post(``"[http://httpbin.org/post](http://httpbin.org/post)"``)
#post方法访问
print``( response.status_code )
#状态码
print``( response.text )
|
4. put方法实例
|
# 第四个 put方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.put(``"[http://httpbin.org/put](http://httpbin.org/put)"``)
# put方法访问
print``( response.status_code )
#状态码
print``( response.text )
|
5.常用方法之get方法传参实例(1)
如果需要传多个参数只需要用&符号连接即可如下
# 第五个 get传参方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.get(``"[http://httpbin.org/get?name=hezhi&age=20](http://httpbin.org/get?name=hezhi&age=20)"``)
# get传参
print``( response.status_code )
#状态码
print``( response.text )
|
6.常用方法之get方法传参实例(2)
params用字典可以传多个
|
# 第六个 get传参方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
data
=
{
"name"``:``"hezhi"``,
"age"``:``20
}
response
=
requests.get(
"[http://httpbin.org/get](http://httpbin.org/get)"
, params``=``data )
# get传参
print``( response.status_code )
#状态码
print``( response.text )
|
7.常用方法之post方法传参实例(2) 和上一个有没有很像
|
# 第七个 post传参方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
data
=
{
"name"``:``"hezhi"``,
"age"``:``20
}
response
=
requests.post(
"[http://httpbin.org/post](http://httpbin.org/post)"
, params``=``data )
# post传参
print``( response.status_code )
#状态码
print``( response.text )
|
8.关于绕过反爬机制,以zh爸爸为例
|
# 第好几个方法实例
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.get(
"[http://www.zhihu.com](http://www.zhihu.com/)"``)
#第一次访问知乎,不设置头部信息
print``(
"第一次,不设头部信息,状态码:"``+``response.status_code )``# 没写headers,不能正常爬取,状态码不是 200
#下面是可以正常爬取的区别,更改了User-Agent字段
headers
=
{
"User-Agent"``:``"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36"
}``#设置头部信息,伪装浏览器
response
=
requests.get(
"[http://www.zhihu.com](http://www.zhihu.com/)"
, headers``=``headers )
#get方法访问,传入headers参数,
print``( response.status_code )
`
200!访问成功的状态码`
print``( response.text )
|
9.爬取信息并保存到本地,因为目录关系,在D盘建立了一个叫做爬虫的文件夹,然后保存信息
注意文件保存时的encoding设置。最后,如果你的时间不是很紧张,并且又想快速的python提高,最重要的是不怕吃苦,建议你可以架尉♥信(同音):276 3177 065 ,那个真的很不错,很多人进步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~
# 爬取一个html并保存
import
requests
url
=
"[http://www.baidu.com](http://www.baidu.com/)"
response
=
requests.get( url )
response.encoding
=
"utf-8"
#设置接收编码格式
print``(``"\nr的类型"
+
str``(
type``(response) ) )
print``(``"\n状态码是:"
+
str``( response.status_code ) )
print``(``"\n头部信息:"
+
str``( response.headers ) )
print``(
"\n响应内容:"
)
print``( response.text )
#保存文件
file
=
open``(``"D:\\爬虫\\baidu.html"``,``"w"``,encoding``=``"utf"``)
#打开一个文件,w是文件不存在则新建一个文件,这里不用wb是因为不用保存成二进制
file``.write( response.text )
file``.close()
|
10.爬取图片,保存到本地
|
#保存百度图片到本地
import
requests
#先导入爬虫的库,不然调用不了爬虫的函数
response
=
requests.get(``"[https://www.baidu.com/img/baidu_jgylogo3.gif](https://www.baidu.com/img/baidu_jgylogo3.gif)"``)
#get方法的到图片响应
file
=
open``(``"D:\\爬虫\\baidu_logo.gif"``,``"wb"``)
#打开一个文件,wb表示以二进制格式打开一个文件只用于写入
file``.write(response.content)
#写入文件
file``.close()``#关闭操作,运行完毕后去你的目录看一眼有没有保存成功
|
到此这篇关于10个python爬虫入门实例(小结)的文章就介绍到这了,更多相关python爬虫入门内容请搜索python教程入门学习以前的文章或继续浏览下面的相关文章希望大家以后多多支持python教程入门学习!
10个python爬虫入门实例(小结)相关推荐
- python3爬虫入门实例_10个python爬虫入门实例(小结)
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例 涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件 ...
- python入门爬虫案例_10个python爬虫入门实例(小结)
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例 涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件 ...
- python爬虫程序实例-10个python爬虫入门实例
作者:h3zh1 来源:cnblogs.com/h3zh1/p/12548946.html 今天为大家准备了几个简单的python爬虫入门实例,分享给大家. 涉及主要知识点:web是如何交互的 req ...
- python爬虫实例-10个python爬虫入门实例
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例 涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件 ...
- 10个python爬虫入门实例,学会直接上手项目开发
涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件的打开,保存 代码中给出了注释,并且可以直接运行哦 如何安装 ...
- python爬虫入门实例-Python爬虫天气预报实例详解(小白入门)
本文研究的主要是Python爬虫天气预报的相关内容,具体介绍如下. 要求是把你所在城市过去一年的历史数据爬出来. 分析网站 我们可以看到,我们需要的天气数据都是放在图表上的,在切换月份的时候,发现只有 ...
- python爬虫入门实例-终于领会python爬虫入门示例
随着人工智能 大数据的火热 Python成为了广大科学家和普通大众的学习语言.在学习Python的过程中 有很多人感到迷茫 不知道自己该从什么地方入手,今天我们就来说一些新手该如何学习Python编程 ...
- python爬虫实例手机_10个python爬虫入门实例
昨天带伙伴萌学习python爬虫,准备了几个简单的入门实例 涉及主要知识点: web是如何交互的 requests库的get.post函数的应用 response对象的相关函数,属性 python文件 ...
- 小白Python爬虫入门实例1——爬取中国最好大学排名
中国大学慕课python网络爬虫与信息提取--定向爬虫"中国最好大学排名信息爬取" 由于课程中老师给的案例有些许瑕疵,加之至今该网页的首页已经更新,原网址已不存在,因此笔者在老师给 ...
- python爬虫入门实例-Python爬虫快速入门:基本结构简单实例
本爬虫系列入门教程假设读者仅有一点点Python基础或者近乎为零的基础.如果是有Python基础的可以跳过一些对于Python基本知识的补充. 爬虫能干什么呢?一句话概括,正常通过浏览器可以获取的数据 ...
最新文章
- 服务器如何运行java文件_在linux服务器上运行java文件
- 内存很空却频繁gc_NonRegisteringDriver造成的内存频繁FullGc
- boost::log::formatting_ostream用法的测试程序
- Windows系统安全模式妙用全接触
- mysql+缓冲池脏块率高_什么是数据库的 “缓存池” ?(万字干货)
- directx修复工具win7_win7提示explorer.exe应用程序错误的解决方法
- linux的工程管理器是,Linux工程管理器——make
- getX,getRawX,getWidth,getTranslationX等的区别
- python基础装饰器_Python基础之装饰器
- 【VMware vSAN 7.0】4.8 有关 vSAN 许可证的注意事项—我们有软硬件解决方案
- 最近火爆的美团饿了么外卖cps分销裂变小程序搭建及推广秘籍(附搭建源码)
- HDU 1166 敌兵布阵 线段树 单点修改 区间查询
- DSP开发的一点概念
- 密码学-02完美保密
- 实现windows与ubuntu的之间的复制与粘贴
- 王卫的新算盘?顺丰上线专享急件服务,从北京到上海收费上千元
- 【error】_smartbi数据集超出最大行数: DataRows > 1000
- 常用IP相关命令查询
- 软工小队第二次会议 4-23
- 洛谷P1562 还是N皇后(DFS+状态压缩+位运算)
热门文章
- 字体arial不支持样式regular的解决方法
- 移动通信原理B-------例题解答1
- tiptop对接泛微OA详细步骤
- [云原生专题-11]:容器 - 如何构建自己的docker镜像:Docker Dockerfile
- clonecd中文破解版|clonecdv光盘复制工具5.5.1.4绿色免费版下载
- 系统清理软件测试,系统垃圾清理有用吗?六大清理工具评测
- 无盘服务器游戏盘大了IO多,BXP无盘详细图文系统教程4
- unity蛮牛游戏API
- 翻译记忆库 Translation Memory
- 【Esri联邦大会】看点13: “NOAA National Hurricane Center”:应急应用