模板户:专注于dede模板,织梦源码,织梦模板,网站模板,dedecms模板,网站源码,dedecms教程以及各类手机网站模板和企业网站模板分享.

织梦模板

VIP

CMS教程

站长学院

随机织梦教程

最新织梦教程

织梦模板随机Tags

关键词排名 原创 用户体验 玩具外贸网站源码 关键词优化 搜索引擎 汽车配件织梦模板 网站title 太阳能光伏网站源码 网站 财务会计网站源码 餐饮管理织梦模板 餐饮加盟网站源码 关键词 汽车润滑油网站源码 蜘蛛 优化 织梦伪静态 高亮 个人网站

【Python爬虫实战】为啥学Python,BOSS告诉你

www.mobanhu.com / 2017-11-08 22:58:09

张世润,Python社区专栏作者

博客:https://zhuanlan.zhihu.com/pythoncoder


目标:获取BOSS直聘上武汉Python工资情况

http://www.zhipin.com/job_detail/?query=Python&scity=101200100&source=2

环境:Python3.5,Pycharm

需要提前安装的库:requests,BeautifulSoup4,lxml


1、首先打开目标网页,寻找我们需要的headers

F12——F5——Network,招聘网站反爬还是有的,有次爬拉钩就被封了。。



2、寻找我们需要的信息

可以发现工资“9K-16K”在“<span class="red">9K-16K</span>”下,待会使用BeautifulSoup4就会很简单。

现在准备工作都已经做完了,下面开始写代码了。


3、写代码

import requests
from bs4 import BeautifulSoup

首先引入模块

url = http://www.zhipin.com/job_detail/?query=Python&scity=101200100&source=2
headers = {
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8,
Accept-Language:zh-CN,zh;q=0.8,
Host:www.zhipin.com,
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36,
}

在请求加上头信息,伪装成浏览器访问

a = requests.get(url,headers=headers)
soup = BeautifulSoup(a.text,lxml)

下一步使用requests获取网页信息,定制请求头。关于 BeautifulSoup的解析器,官方这样说

BeautifulSoup 第一个参数应该是要被解析的文档字符串或是文件句柄,第二个参数用来标识怎样解析文档.如果第二个参数为空,那么Beautiful Soup根据当前系统安装的库自动选择解析器,解析器的优先数序: lxml, html5lib, Python标准库.在下面两种条件下解析器优先顺序会变化:
  • 要解析的文档是什么类型: 目前支持, “html”, “xml”, 和 “html5”

  • 指定使用哪种解析器: 目前支持, “lxml”, “html5lib”, 和 “html.parser”

现在我们已经获得了我们想要的网页数据,下一步就是从中找出工资情况。

先前一经发现工资的位置<span class="red">9K-16K</span>

b = soup.find_all("span",class_="red")
print(b)
[<span class="red">10K-15K</span>, <span class="red">9K-16K</span>, <span class="red">10K-20K</span>, <span class="red">10K-20K</span>, <span class="red">6K-12K</span>, <span class="red">8K-16K</span>, <span class="red">15K-30K</span>, <span class="red">10K-15K</span>, <span class="red">8K-11K</span>, <span class="red">8K-16K</span>, <span class="red">15K-16K</span>, <span class="red">12K-18K</span>, <span class="red">10K-15K</span>, <span class="red">8K-15K</span>, <span class="red">8K-15K</span>]

结果中包含有标签,BeautifulSoup提供一种很简洁的办法 get_text()

C:Python35python.exe D:/Backup/桌面/77/爬虫.py
Traceback (most recent call last):
 File "D:/Backup/桌面/77/爬虫.py", line 18, in <module>
   print(b.get_text())
AttributeError: ResultSet object has no attribute get_text

可是直接使用却出错,提示“ResultSet object has no attribute get_text”

只好换一种方法

b = soup.find_all("span",class_="red")
#print(b)
for i in b:
c = i.get_text("|", strip=True)
print(c)

得到结果


这只是抓取了一页的数据,有15个,其实数据太少,但是该如何进行多页爬取?粗略看看工资基本在10K左右,那么运营岗位工资如何。

只需修改url就可以,结果为:


简直没法比,作为一个文科生,不会什么特长,想养活自己还是学点技术吧。

完整代码 https://github.com/zhangslob/-Python-Python-BOSS-/blob/master/test.py


小问题:为什么直接使用“print(b.get_text())”会出错??如何进行多页爬取?想对这两组数据进行可视化,如何处理?

(这问题我真的不会)

希望更多朋友可以交流,用半天写下这个篇文章,有多半时间都是在错误和查询文档中度过的,有人交流会不会好些呢~~

推荐阅读:

快速上手 - Requests 2.10.0 文档:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html#id2

Beautiful Soup 4.2.0 文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html


免费爬虫视频获取: 关注公众号,“Python爱好者社区”,回复“爬虫”即可获取。


Python爱好者社区


为大家提供与Python相关的最新技术和资讯。


长按指纹 > 识别图中二维码 > 添加关注



投诉
本文由AB模板网:织梦模板整理发布, 转载请说明出处:https://www.mobanhu.com
随机站长资讯
高级精美的家私企业网站源码 家私家纺类网
农业绿色生态水果企业dede源码
驾校类企业网站源码 驾校网站模板
绿色LED灯管类织梦源码 照明企业网站模板
蓝色通用织梦博客模板 资讯文章类网站源码
红色大气装饰公司织梦源码 建筑装修装潢企
网站建设企业模板 互联网网络营销类网站源
html5响应式手机自适应网站模板(兼容手机
黑色HTML5工作室网络公司网站整站模板(适
简洁大气网站建设网络设计类企业织梦模板
html5+css3高端网站建设工作室源码 酷炫的h
红灰色大气网络工作室织梦模板
织梦dedecms幻灯片模糊解决办法
织梦dedecms巧用标签实现图片自动Alt功能,
织梦dedecms文章列表循环标签增加notypeid
织梦dedecms专题模板应用分析及使用案例
dedecms织梦让二级栏目标题去除“/”斜杠和
最新站长资讯
高级精美的家私企业网站源码 家私家纺类网
农业绿色生态水果企业dede源码
驾校类企业网站源码 驾校网站模板
绿色LED灯管类织梦源码 照明企业网站模板
蓝色通用织梦博客模板 资讯文章类网站源码
红色大气装饰公司织梦源码 建筑装修装潢企
网站建设企业模板 互联网网络营销类网站源
html5响应式手机自适应网站模板(兼容手机
黑色HTML5工作室网络公司网站整站模板(适
简洁大气网站建设网络设计类企业织梦模板
html5+css3高端网站建设工作室源码 酷炫的h
红灰色大气网络工作室织梦模板
织梦dedecms幻灯片模糊解决办法
织梦dedecms巧用标签实现图片自动Alt功能,
织梦dedecms文章列表循环标签增加notypeid
织梦dedecms专题模板应用分析及使用案例
dedecms织梦让二级栏目标题去除“/”斜杠和
关于出现“对不起,您安装的不是正版应用..
Discuz(Can not write to cache files)有关
Discuz通过修改文章标题更好的实现SEO的方
DiscuzX中存在不合法的文件被上传的修复方
关于Discuz x3.1页面空白解决方法
首页 免费源码 VIP专区 会员中心
收缩