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操作sqlite的CRUD实例分析
May 08 Python
Django中URLconf和include()的协同工作方法
Jul 20 Python
常见python正则用法的简单实例
Jun 21 Python
python字典快速保存于读取的方法
Mar 23 Python
Django框架 信号调度原理解析
Sep 04 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
Jan 06 Python
Python使用qrcode二维码库生成二维码方法详解
Feb 17 Python
Python中Yield的基本用法
Oct 18 Python
Django websocket原理及功能实现代码
Nov 14 Python
python实现自动清理文件夹旧文件
May 10 Python
Python 如何利用ffmpeg 处理视频素材
Nov 27 Python
Python学习之os包使用教程详解
Mar 21 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
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
2011/08/22 PHP
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
基于PHP读取csv文件内容的详解
2013/06/18 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
2014/06/10 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
2017/02/04 PHP
jquery.autocomplete修改实现键盘上下键自动填充示例
2013/11/19 Javascript
学习javascript面向对象 理解javascript原型和原型链
2016/01/04 Javascript
Javascript6中字符串的四个新用法分享
2016/09/11 Javascript
Angular 4环境准备与Angular cli创建项目详解
2017/05/27 Javascript
元素全屏的设置与监听实例
2017/11/28 Javascript
layer.open 按钮的点击事件关闭方法
2018/08/17 Javascript
新手必须知的Node.js 4个JavaScript基本概念
2018/09/16 Javascript
js实现简易计算器功能
2019/10/18 Javascript
vue请求服务器数据后绑定不上的解决方法
2019/10/30 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
vue实现标签云效果的示例
2020/11/09 Javascript
python BeautifulSoup使用方法详解
2013/11/21 Python
win10环境下python3.5安装步骤图文教程
2017/02/03 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
解决pycharm下os.system执行命令返回有中文乱码的问题
2019/07/07 Python
python 修改本地网络配置的方法
2019/08/14 Python
美国内衣第一品牌:Hanes(恒适)
2016/07/29 全球购物
纽约家具、家居装饰和地毯店:ABC Carpet & Home
2017/06/21 全球购物
慕尼黑山地运动、户外服装和体育用品专家:Sporthaus Schuster
2019/08/27 全球购物
澳大利亚手袋、珠宝和在线时尚精品店:The Way
2019/12/21 全球购物
本科毕业生自荐信
2014/06/02 职场文书
三好生演讲稿
2014/09/12 职场文书
整改报告怎么写
2014/11/06 职场文书
2014全年工作总结
2014/11/27 职场文书
个人事迹材料怎么写
2014/12/30 职场文书
公司开除员工通知
2015/04/22 职场文书
2015年安全保卫工作总结
2015/05/14 职场文书
某某店铺的开业庆典主持词范本
2019/11/25 职场文书
为什么mysql字段要使用NOT NULL
2021/05/13 MySQL
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python
Python数据分析之绘图和可视化详解
2021/06/02 Python