Python 爬虫 招聘信息并存入数据库
新学习了selenium,啪一下腾讯招聘
from lxml import etree
from selenium import webdriver
import pymysql
def Geturl(fullurl):#获取每个招聘网页的链接
browser.get(fullurl)
shouye_html_text = browser.page_source
shouye_ele = etree.HTML(shouye_html_text)
zp_list = shouye_ele.xpath('//*[@id="position"]/div[1]/table/tbody/tr/td/a/@href')#链接url
zp_url_list = []
for zp_url_lost in zp_list:
zp_url = 'https://hr.tencent.com/'+zp_url_lost
zp_url_list.append(zp_url)
return zp_url_list
def Getinfo(zp_url_list):#获取每个招聘链接内部的内容
for zp_url in zp_url_list:
browser.get(zp_url)
zp_info_html = browser.page_source
zp_ele = etree.HTML(zp_info_html)
zp_info_title = str(zp_ele.xpath('//*[@id="sharetitle"]/text()')[0])
zp_info_location = str(zp_ele.xpath('//*[@id="position_detail"]/div/table/tbody/tr[2]/td[1]/text()')[0])
zp_info_type = str(zp_ele.xpath('//*[@id="position_detail"]/div/table/tbody/tr[2]/td[2]/text()')[0])
zp_info_num = str(zp_ele.xpath('//*[@id="position_detail"]/div/table/tbody/tr[2]/td[3]/text()')[0])
zp_info_need = str(zp_ele.xpath('//*[@id="position_detail"]/div/table/tbody/tr[3]/td/ul/li/text()'))
connection = pymysql.connect(host='localhost', user='root', password='', db='txzp', )
try:
with connection.cursor() as cursor:
sql = "INSERT INTO `txzp_info` (`title`, `location`,`type`,`num`,`need`) VALUES (%s,%s,%s,%s, %s)"
cursor.execute(sql, (zp_info_title,zp_info_location,zp_info_type,zp_info_num,zp_info_need))
connection.commit()
finally:
connection.close()
print(zp_info_title,zp_info_location,zp_info_type,zp_info_num,zp_info_need)
if __name__ == '__main__':
browser = webdriver.Chrome()
pags = int(input('需要几页?'))
for i in range(0,pags):
url = 'https://hr.tencent.com/position.php?keywords=&tid=0&start={}'
fullurl = url.format(str(i*10))
zp_url_list = Geturl(fullurl)
Getinfo(zp_url_list)
browser.close()
Python 爬虫 招聘信息并存入数据库的更多相关文章
- 用python抓取智联招聘信息并存入excel
用python抓取智联招聘信息并存入excel tags:python 智联招聘导出excel 引言:前一阵子是人们俗称的金三银四,跳槽的小朋友很多,我觉得每个人都应该给自己做一下规划,根据自己的进步 ...
- Python爬取热搜存入数据库并且还能定时发送邮件!!!
一.前言 微博热搜榜每天都会更新一些新鲜事,但是自己处于各种原因,肯定不能时刻关注着微博,为了与时代接轨,接受最新资讯,就寻思着用Python写个定时爬取微博热搜的并且发送QQ邮件的程序,这样每天可以 ...
- python爬虫爬取ip记录网站信息并存入数据库
import requests import re import pymysql #10页 仔细观察路由 db = pymysql.connect("localhost",&quo ...
- python之scrapy爬取jingdong招聘信息到mysql数据库
1.创建工程 scrapy startproject jd 2.创建项目 scrapy genspider jingdong 3.安装pymysql pip install pymysql 4.set ...
- Python爬取前程无忧网站上python的招聘信息
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 我姓刘却留不住你的心 PS:如有需要Python学习资料的小伙伴可以 ...
- 爬取前程无忧网站上python的招聘信息。
本文获取的字段有为职位名称,公司名称,公司地点,薪资,发布时间 创建爬虫项目 scrapy startproject qianchengwuyou cd qianchengwuyou scrapy g ...
- 爬虫获取邮箱,存入数据库,发送邮件java Mail
在网页上获取邮箱: package com.my.test; import java.io.BufferedReader; import java.io.InputStreamReader; impo ...
- python爬虫:爬取医药数据库drugbank
这个是帮朋友做的,难点就是他们有一个反爬虫机制,用request一直不行,后面我就用selenium直接把网页copy下来,然后再来解析本地的html文件,就木有问题啦. 现在看来,写得有点傻,多包涵 ...
- C#获取网页信息并存入数据库
1,获取以及商品分类信息 给一网页获取网页上商品信息的分类 using Skay.WebBot; using System; using System.Collections.Generic; usi ...
随机推荐
- 【Leetcode】【Medium】Linked List Cycle II
Given a linked list, return the node where the cycle begins. If there is no cycle, return null. 解题: ...
- jbd2/dm-2-8 io太高
用iotop查看发现[jbd2/dm-2-8]几乎占用了99%的io使用率,但是却没有输入输出 后来上网查找,网上有人说是个内核bug,需要升级内核,或者降低jdb2的提交次数,即重新挂载磁盘 添加c ...
- easyui学习笔记5—panel加载其他的页面
上一篇中我们看到了panel的基本实现,没有什么难度,最重要的是data-options和class两个标签属性的定义.这里我们将看一下在panel中如何加载其他的页面. 1.先看看引用的资源文件和h ...
- C#学习——入门简介
# C#简介 #原版出处点击这里 C#是一个现代的.通用的.面向对象的编程语言,它是由微软(Microsoft)开发的,由Ecma和ISO核准认可的. C#是由Anders Heilsberg和他的团 ...
- linux shell数据重定向
标准输入 (stdin) :代码为 0 ,使用 < 或 << :标准输出 (stdout):代码为 1 ,使用 > 或 >> :标准错误输出(stderr):代码为 ...
- 【REACT NATIVE 系列教程之十二】REACT NATIVE(JS/ES)与IOS(OBJECT-C)交互通信
http://blog.csdn.net/xiaominghimi/article/details/51586492 一用到跨平台的引擎必然要有引擎与各平台原生进行交互通信的需要.那么Himi先讲解R ...
- Myeclipse 自带Tomcat启动8080端口占用
在启动Myeclipse自带的Tomcat发现报错,显示8080端口被占用 第一步:window+r 组合键,调出命令窗口. 第二步:输出命令:netstat -ano|findstr 8080 ...
- 2springboot:快速创建springboot项目
使用IDEA快速创建springboot项目流程: 创建新的项目选择 项目的命名以及包名 需要什么包就导入什么包 进行测试的单元 <dependency> <groupId>o ...
- Kali-linux准备内核头文件
内核头文件是Linux内核的源代码.有时候,用户需要编译内核头文件代码,为以后使用内核头文件做准备,本节将介绍编译内核头文件的详细步骤. 准备内核头文件的具体操作步骤如下所示. (1)更新软件包列表. ...
- CPP-基础:事件
事件(Event) 事件对象也可以通过通知操作的方式来保持线程的同步.并且可以实现不同进程中的线程同步操作. 信号量包含的几个操作原语: CreateEvent() 创建一个事件 ...