爬取五八同城招聘网站上的软件工程师的数据 | 爬虫

news/2024/5/9 11:22:12/文章来源:https://jiling.blog.csdn.net/article/details/103650682

本次的模块类似:爬取京东的手机类商品数据 | selenium,但是是使用的requests库和BeautifulSoup库。

1、import

from bs4 import BeautifulSoup
import pymysql.cursors
import requests,urllib.parse,time,datetime

2、class Spider:

爬虫源码创建了一个爬虫类。如下简略:

class Spider:#打开数据库,初始化def opneDB(self):...#关闭数据库def closeDB(self):...#数据插入数据库def insertDB(self,No,Wage,Post,Mark,Company):...#主要过程def processSpider(self,url,Page,page=0):...#执行爬虫,即主程序def executeSpider(self,url):

2.1 opneDB

    def startUp(self, url, key):# Initializing Chrome browserchrome_options = Options()#下面两项为无头与禁止gpu加速;#--headless比较重要,执行selenium时不会弹出浏览器窗口chrome_options.add_argument('--headless')chrome_options.add_argument('--disable-gpu')#创建Chrome浏览器self.driver = webdriver.Chrome(chrome_options=chrome_options)## Initializing variablesself.No = 0

数据库的初始化

    def openDB(self):#初始化编号self.No=0print('opened')try:#连接数据库self.con = pymysql.connect(host="127.0.0.1", port=3306, user="root", passwd="", db='db1',charset="utf8")self.cursor = self.con.cursor(pymysql.cursors.DictCursor)#建表try:self.cursor.execute("drop table job_software")except Exception as err:print(err)try:sql = """
create table job_software(No varchar(32) primary key,Wage varchar(256),Post varchar(256),Mark text,Company text)"""self.cursor.execute(sql)except Exception as err:print(err)self.opened = Trueself.count = 0except  Exception as err:print(err)self.opened = False

2.2 closeUp

关闭数据库,并输出爬取数据数量。

    def closeUp(self):if self.opened:self.con.commit()self.con.close()self.opened = Falseprint("closed")print("总共爬取", self.count, "条数据")

2.3 insertDB

数据库插入数据语句。每执行一次,count+1

    def insertDB(self,No,Wage,Post,Mark,Company):try:if self.opened:sql = "insert into job_software(No,Wage,Post,Mark,Company) values (%s,%s,%s,%s,%s)"self.cursor.execute(sql,(No,Wage,Post,Mark,Company))self.count+=1except Exception as err:print(err)

2.4 progressSpider

这个模块主要是Spider执行的具体内容,读取源码,SP解码

    def processSpider(self,url,Page,page=0):kv = {'user-agent': 'Mozilla/5.0'}html = requests.get(url, headers=kv)soup = BeautifulSoup(html.text, 'lxml')

观察58搜索页的源代码,可以发现所需要的数据都在属性为class='job_item clearfix的标签li里,使用find_all即可得到所有的li标签。
BeautifulSoup查找元素的具体语法。

        try:time.sleep(1)lis = soup.find_all(name='li', attrs={'class': "job_item clearfix"})for li in lis:Mark = li.find(name='a').textMark, D, s = '', Mark, 0while s < len(D):if D[s] in [' ', '\n']: s += 1;continueMark += D[s]s += 1Wage = li.find(name='p').textCompany = li.find(name='div', attrs={'class': "item_con job_comp"}).find(name='a').textCompany, D, s = '', Company, 0while s < len(D):if D[s] in [' ', '\n']: s += 1;continueCompany += D[s]s += 1Post = li.find(name='div', attrs={'class': "item_con job_comp"}).find(name='p').find(name='span').textself.No = self.No + 1no = str(self.No)while len(no) < 6:no = "0" + noself.insertDB(no,Wage,Post,Mark,Company)

遍历完li标签后,即执行翻页的命令。观察得到下一页在class=next的a标签里,通过find语句提取其中的超链接,然后递归 progressSpider即可。

			x = soup.find(name='a', attrs={'class': "next"})['href']page+=1print('第%d页已爬取完毕!'%page)if page==Page:returnself.processSpider(x,Page,page)

2.5 executeSpider

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_737197.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx 反向代理为什么可以提高网站性能?

2019独角兽企业重金招聘Python工程师标准>>> 作者&#xff1a;张海 链接&#xff1a;https://www.zhihu.com/question/19761434/answer/160935301 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 最高赞回…

如何选择网站服务器:Windows Or Linux

2019独角兽企业重金招聘Python工程师标准>>> 导读关于网站服务器操作系统的选择也是很多站长们的困惑之一&#xff0c;虽然这个选择目前来看可选择的无非也就是 Windows 和Linux 而已&#xff0c;但现实是这是一个有关网站长期规划的重要选择。服务器操作系统可是决…

网站结构优化之URL优化技巧

网站SEO优化中&#xff0c;除了常见的网站TDK三大标签以外&#xff0c;还需要注意网站结构的优化&#xff0c;在网站结构优化中我们需要关注URL优化。那么该注重哪些URL优化技巧呢&#xff1f; 一、URL基础通俗来说URL就是我们常说的网址或者是链接。在SEO中常见的URL如下&…

为何大量网站不能抓取?爬虫突破封禁的6种常见方法

在互联网上进行自动数据采集&#xff08;抓取&#xff09;这件事和互联网存在的时间差不多一样长。今天大众好像更倾向于用“网络数据采集”&#xff0c;有时会把网络数据采集程序称为网络机器人&#xff08;bots&#xff09;。最常用的方法是写一个自动化程序向网络服务器请求…

端口渗透·网站渗透过程 --21 ,22,873,3306,6379,8080(8080端口是针对CMS的渗透)...

声明&#xff1a;文章渗透网站为模拟环境&#xff0c;文章只为利用过程 文章为信息收集和端口渗透两部分&#xff0c;21端口为ftp版本漏洞 8080端口为CMS的渗透 信息收集&#xff1a; 使用扫描工具nmap ,PortScan 对整个网段进行扫描 信息&#xff1a;通过访问网站得到要测试的…

dva开发一个cnode网站(4)

增加分类标签&#xff0c;效果如下&#xff1a;1 修改ListData组件 完整代码&#xff1a; import React , { Component }from react; import { List, Avatar, Icon, Spin ,Tag } from antd; import PropTypes from prop-types; import { connect } from dva; import ./my.css; …

网站主要服务器,网站服务器的主要操作系统

网站服务器的主要操作系统 内容精选换一换首先需要准备一台Linux系统的物理服务器作为镜像制作服务器(即宿主机)。制作x86镜像选用x86服务器&#xff0c;制作ARM镜像选用ARM服务器。宿主机必须安装&#xff1a;vsftpd服务sshd服务vnc服务virt-manager工具kvm虚拟化软件虚拟化管…

五个让你一生受用的资源网站

还在为找不到好的资源网站而发愁吗&#xff0c;这里我就向大家分享一下几个资源满满的资源网站&#xff0c;希望你能喜欢。一、55小说网 55小说网是一个专门看小说的网站&#xff0c;里面拥有海量的小说资源&#xff0c;什么类型的都有&#xff0c;包括修真、玄幻、都市、网游…

五款优质资源网站 每一个都让你欲罢不能

是否还在为找找不到想要的资源而烦恼&#xff0c;是否还在百度上搜索找资源&#xff0c;今天我就给大家分享几个优质的资源网站&#xff0c;希望你能喜欢。一、海盗湾 海盗湾&#xff0c;是一个专注分享高清电影BT种子的资源网站&#xff0c;这里有很多种类型的热门电影资源&a…

五大黑科技资源网站,你想要的这里都有

如今的网上资源是越来越多&#xff0c;你想要的一些资源如影视、小说、音乐的等都可以搜索得到&#xff0c;今天我就向大家分享几个非常丰富的资源网站。 1、恒言中文网 一个小说阅读网站&#xff0c;里面有各种各样的小说供你选择&#xff0c;不管是玄幻还是都市&#xff0c…

五个顶级资源网站 就没有你找不到的

随着互联网的崛起&#xff0c;各种各样的网站也随之出现&#xff0c;一些找稀有的资源也出现在各大网站上&#xff0c;今天我就跟大家分享一下几个资源满满的资源网站。1、起点中文网 这是一个小说阅读网站&#xff0c;里面有着各种类型的小说&#xff0c;像玄幻、都市这种非常…

资源任你选,这几个网站你值得收藏

相信有不少人在为找不到资源而烦恼吧&#xff0c;其实如今互联网上资源网站有很多&#xff0c;只是大家都还不知道名字而已&#xff0c;这里我就向大家分享几个非常强大的资源网站。 1、美剧在线看 如今美剧资源越来越难找&#xff0c;更多的是在网盘里搜资源&#xff0c;但是…

悄悄送你几个黑科技资源网站 赶紧收藏起来

如今电脑上的网站成千上万&#xff0c;但是你却不知道几个&#xff0c;今天在这里我就悄悄地和你们分享几个资源泛滥的网站&#xff0c;记得收藏哦。 1、馒头影视 所有片源&#xff0c;画质都相当不俗&#xff01;这点难能可贵&#xff0c;分类丰富&#xff0c;电影、电视剧、…

五个资源巨多的网站 错过了要找就难了

大家都知道&#xff0c;在如今网络通畅&#xff0c;互联网发达的时代&#xff0c;各种各样的资源网站也逐渐浮出水面&#xff0c;今天我就向大家分享几个不错的资源网站&#xff0c;希望你们能找到自己想要的资源。 1、资源狗 这是一个收录了非常多资源网站的比较综合的网站&…

几个强大到没朋友的资源网站 个个都是精品

你想看的小说电影电视有没有在网上搜不到的&#xff0c;其实并不是搜不到&#xff0c;而是你搜索的方式不对&#xff0c;想要找到梦寐以求的资源需要选择对的网站&#xff0c;今天我就为大家介绍几个资源满满的网站&#xff0c;希望有你需要的。1、疯狂影视搜索 疯狂影视搜索是…

五个好评不断的资源网站 绝对不能错过

网络时代的发展已经越来越迅速了&#xff0c;在网站上找资源根本就不用费什么力&#xff0c;只要你知道网站的名字和网址即可&#xff0c;如今的网络和电脑硬盘的强大能满足你对资源的需求。而今天我带来的就是几个资源网站的名字&#xff0c;觉得有用的话就去搜索一下吧。 1、…

找不到资源?这五个网站小说、影视随便看

随着互联网快速的发展&#xff0c;很多强大、优秀的网站都脱颖而出&#xff0c;想要找到好的资源就要在这些网站中寻找&#xff0c;今天我就我为大家带来几款资源非常丰富的网站&#xff0c;就怕你觉得太多了。 1、看看屋 在线观看影视资源网站&#xff0c;你还在百度上面找电…

5个可遇不可求的资源网站 赶紧收藏起来

还在为到处寻找资源而烦恼吗&#xff0c;今天我来和大家分享几款资源超多的网站&#xff0c;不管是影视、动漫&#xff0c;还是学习资源&#xff0c;都应有尽有。一起来看一下吧。 1、搬运工 可以说这是小编比较常用的影视资源网站了&#xff0c;可以说很多新上的影视资源&am…

五个资源超多的资源网站 每一个都是精品

每天都有人在寻找资源&#xff0c;除了在百度上搜索&#xff0c;在其他的网站上也一样可以找到非常多的资源&#xff0c;而今天我为大家分享的就是就几个资源超多的网站&#xff0c;让你找资源不再那么辛苦。 1、嗨哆咪影视 很多人找电影资源都会在网盘中搜索&#xff0c;其实…

分享5个相见恨晚的资源网站 每个都值得收藏

网上的资源永远找不完&#xff0c;随着5G时代即将到来&#xff0c;互联网也将越来越强大&#xff0c;资源网站也会越来越多。今天我就和大家分享几个资源巨多的网站&#xff0c;喜欢的话可以收藏一下。 1、磁力熊 1080P高清电影磁力链接下载站&#xff0c;收录的都是评分非常…