吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4428|回复: 2
收起左侧

[Python 转载] 采集招聘信息

[复制链接]
Dmail 发表于 2019-1-8 21:44
本帖最后由 Dmail 于 2019-1-8 22:06 编辑

额,还没学写出表格文件,也还没接触python数据库相关的内容,所以没有写保存采集信息或者入库的代码,只有控制台输出。最后再比一个心~ 爱心.jpg 引用库:
Selenium
爬的有点慢的感觉,优点应该是可以通用还比较简单,有兴趣的可以去看帮助文档:https://selenium-python-zh.readthedocs.io/en/latest/index.html
采集招聘信息.png
上面是调试输出的结果
下面是贴出代码
[Python] 纯文本查看 复制代码
'''
文件名:L15.py
作者:小饭团
创建时间:2019年1月8日21:38:55
文件描述:采集招聘信息
'''	
#-*- coding:UTF-8 -*-
#导入模块
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
import time
# 无界面模式
def 开启驱动_谷歌无界面模式():
   chrome_options = Options()
   chrome_options.add_argument('--headless')
   chrome_options.add_argument('--disable-gpu')
   #64位系统的浏览器一定要加上下面的这句话
   chrome_options.add_argument('--no-sandbox')
   driverChrome = webdriver.Chrome(chrome_options=chrome_options)
   '''
   driverChrome.get('http://www.baidu.com')
   print(driverChrome.title)
   '''
   return driverChrome
 
# 有界面的就简单了
def 开启驱动_谷歌有界面模式():
	chrome_options = Options()
	#64位系统的浏览器一定要加上下面的这句话
	chrome_options.add_argument('--no-sandbox')
	driverChrome = webdriver.Chrome(chrome_options=chrome_options)
	#driverChrome.get('http://www.baidu.com')
	#print(driverChrome.title)
	return driverChrome 
def pachong(url):
	浏览器_驱动 = 开启驱动_谷歌有界面模式()
	浏览器_驱动.get(url)
	time.sleep(1)
	页面总数 = 浏览器_驱动.find_elements_by_xpath('//*[@id="resultList"]/div[55]/div/div/div/span[1]')[0].text[1:-4]
	元素列表 = 浏览器_驱动.find_elements_by_class_name('el')
	#点击翻页按钮的js代码
	#js="document.querySelector('#resultList > div.dw_page > div > div > div > ul > li:nth-child(6) > a').click()"
	count=0
	for x in 元素列表:
		t = (x.find_elements_by_class_name('t1'))
		if(len(t)==1):
			hrefText='链接'
			if(count!=0):
				hrefText=t[0].find_elements_by_tag_name('a')[0].get_attribute('href')
			t2=x.find_elements_by_class_name('t2')
			t3=x.find_elements_by_class_name('t3')
			t4=x.find_elements_by_class_name('t4')
			print(t[0].text+'\t'+t2[0].text+'\t'+t3[0].text +'\t'+t4[0].text+'\t'+hrefText)
			count+=1
	for x in range(int(页面总数)-1):
		#点击翻页按钮
		#浏览器_驱动.execute_script(js)
		下一页 = 浏览器_驱动.find_elements_by_class_name('bk')[1]
		下一页.click()
		#给1秒加载时间
		time.sleep(1)
		元素列表 = 浏览器_驱动.find_elements_by_class_name('el')
		for x in 元素列表:
			t = (x.find_elements_by_class_name('t1'))
			if(len(t)==1):
				if(t[0].text!='职位名'):
					hrefText=t[0].find_elements_by_tag_name('a')[0].get_attribute('href')
					t2=x.find_elements_by_class_name('t2')
					t3=x.find_elements_by_class_name('t3')
					t4=x.find_elements_by_class_name('t4')
					print(t[0].text+'\t'+t2[0].text+'\t'+t3[0].text +'\t'+t4[0].text+'\t'+hrefText)
	浏览器_驱动.quit()

def main():
	pachong('https://search.51job.com/list/030200,000000,0000,00,9,99,%25E6%25B8%25B8%25E6%2588%258F%25E5%25AE%25A2%25E6%259C%258D,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=')
		
	
if __name__ == '__main__':
   main()

免费评分

参与人数 2吾爱币 +2 热心值 +1 收起 理由
99910369 + 1 + 1 用心讨论,共获提升!
a半岁音书 + 1 <font style="vertical-align: inherit;"><font style=

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

董大大。 发表于 2019-1-8 22:56
没学过蟒蛇,不过感觉不错
fuan047 发表于 2019-1-23 17:43
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 17:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表