Python基于requests库爬取网站信息


Posted in Python onMarch 02, 2020

requests库是一个简介且简单的处理HTTP请求的第三方库

get()是获取网页最常用的方式,其基本使用方式如下

使用requests库获取HTML页面并将其转换成字符串后,需要进一步解析HTML页面格式,这里我们常用的就是beautifulsoup4库,用于解析和处理HTML和XML

下面这段代码便是爬取百度的信息并简单输出百度的界面信息

import requests
from bs4 import BeautifulSoup
r=requests.get('http://www.baidu.com')
r.encoding=None
result=r.text
bs=BeautifulSoup(result,'html.parser')
print(bs.title)
print(bs.title.text)
import requests
from bs4 import BeautifulSoup

#用来解决乱码现象,所以编写爬取信息的代码最好带上(输出出现乱码或者UnicodeEncodeError:'gbk'codec can't encode character) 
import io   
import sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')

#用来防止反爬取,可以了解一下
headers={"User-Agent" : "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.6)",
"Accept" : "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",

"Accept-Language" : "en-us",

"Connection" : "keep-alive",

"Accept-Charset" : "GB2312,utf-8;q=0.7,*;q=0.7"
}

#获取51job网站的基本信息
r=requests.get('https://search.51job.com/list/000000,000000,0000,00,9,99,python,2,1.html?lang=c&stype=&postchannel=0000&workyear=99&cotype=99°reefrom=99&jobterm=99&companysize=99&providesalary=99&lonlat=0%2C0&radius=-1&ord_field=0&confirmdate=9&fromType=&dibiaoid=0&address=&line=&specialarea=00&from=&welfare=')
r.encoding=r.apparent_encoding
result=r.text
bs=BeautifulSoup(result,'html.parser')
print(bs.prettify())

u1=bs.find_all('u1',attrs={'class':'item_con_list'})  #这部分代码便是我们爬取的目标,51job网站上关于python职业的薪资
print(len(u1))
li=bs.find_all('span',attrs={'class':'t4'})
for l in li:
  print(l.text)

上面这段代码便是爬取51job网站上的与python相关职业的薪资

Python基于requests库爬取网站信息Python基于requests库爬取网站信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 错误和异常小结
Oct 09 Python
Python 记录日志的灵活性和可配置性介绍
Feb 27 Python
Python基于dom操作xml数据的方法示例
May 12 Python
Python实现读写INI配置文件的方法示例
Jun 09 Python
5分钟 Pipenv 上手指南
Dec 20 Python
解决yum对python依赖版本问题
Jul 05 Python
python从zip中删除指定后缀文件(推荐)
Dec 05 Python
python使用梯度下降算法实现一个多线性回归
Mar 24 Python
Django高并发负载均衡实现原理详解
Apr 04 Python
keras 多gpu并行运行案例
Jun 10 Python
pandas使用函数批量处理数据(map、apply、applymap)
Nov 27 Python
python 使用csv模块读写csv格式文件的示例
Dec 02 Python
使用python3 实现插入数据到mysql
Mar 02 #Python
python数字类型math库原理解析
Mar 02 #Python
Python如何实现在字符串里嵌入双引号或者单引号
Mar 02 #Python
Python random库使用方法及异常处理方案
Mar 02 #Python
python 实现人和电脑猜拳的示例代码
Mar 02 #Python
解决python3插入mysql时内容带有引号的问题
Mar 02 #Python
python统计字符串中字母出现次数代码实例
Mar 02 #Python
You might like
dede3.1分页文字采集过滤规则详说(图文教程)续二
2007/04/03 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
php实现文件管理与基础功能操作
2017/03/21 PHP
实例讲解php实现多线程
2019/01/27 PHP
在浏览器窗口上添加遮罩层的方法
2012/11/12 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
javascript引用类型指针的工作方式
2015/04/13 Javascript
Javascript必知必会(四)js类型转换
2016/06/08 Javascript
jQuery中table数据的值拷贝和拆分
2017/03/19 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
JavaScript对象的特性与实践应用深入详解
2018/12/30 Javascript
判断js数据类型的函数实例详解
2019/05/23 Javascript
js实现橱窗展示效果
2020/01/11 Javascript
使用Python获取并处理IP的类型及格式方法
2018/11/01 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
Flask框架路由和视图用法实例分析
2019/11/07 Python
Python TKinter如何自动关闭主窗口
2020/02/26 Python
Django Session和Cookie分别实现记住用户登录状态操作
2020/07/02 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
美国领先的礼品卡网站:GiftCards.com
2016/11/02 全球购物
DJI美国:消费类无人机领域的领导者
2018/04/27 全球购物
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
教育学专业毕业生的自我评价
2013/11/21 职场文书
社区安全检查制度
2014/02/03 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
合作协议书格式
2014/08/19 职场文书
党员演讲稿
2014/09/04 职场文书
有限公司股东合作协议书
2014/10/29 职场文书
教师党员个人自我评价
2015/03/04 职场文书
招商银行工作证明
2015/06/17 职场文书
安全教育培训制度
2015/08/06 职场文书
党员公开承诺书2016
2016/03/24 职场文书
解决SpringCloud Feign传对象参数调用失败的问题
2021/06/23 Java/Android