数据库表语句:

CREATE TABLE `lagou` (`id` int(8) NOT NULL AUTO_INCREMENT,`l_url` varchar(255) NOT NULL,`companyurl` varchar(255) NOT NULL,`companuname` varchar(255) NOT NULL,`companyintro` blob NOT NULL,`companyproducte` blob NOT NULL,`companyintro2` blob NOT NULL,`manage` blob NOT NULL,`touzi_jigou` blob NOT NULL,`companyarea` blob NOT NULL,KEY `id` (`id`) USING BTREE
) ENGINE=MyISAM AUTO_INCREMENT=110039 DEFAULT CHARSET=utf8;

因为拉勾的各种限制所以就只能是单线程采集了 频率也不高,有兴趣的同学可以加代理或者动态拨号,改成多线程的,因为有频率限制我就直接单线程了

python代码:

#coding:utf-8
import requests
import Queue
import threading
from lxml import etree
import MySQLdb
import re
import time
import randomconn= MySQLdb.connect(host='localhost',port = 3306,user='root',passwd='root',db ='ceshi',charset="utf8",)
cur = conn.cursor()repace=re.compile(r'leaders":\[(.*?)\]')
repace1=re.compile(r'history":\[(.*?)\]')
repace2=re.compile(r'"companyProfile\"\:\"(.*?)\"')
threadLock = threading.Lock()
#html=requests.get('https://www.lagou.com/gongsi/10.html')
USER_AGENTS = ["Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)","Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)","Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)","Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)","Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)","Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)","Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)","Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6","Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1","Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0","Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5","Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.20 (KHTML, like Gecko) Chrome/19.0.1036.7 Safari/535.20","Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52",
]q_queue=Queue.Queue()
def crawl():while not q_queue.empty():url=q_queue.get()time.sleep(4)header={'User-Agent': random.choice(USER_AGENTS)}try:    #req=requests.get(url,headers=header,timeout=16,verify=False, allow_redirects=False)req=requests.get(url,headers=header,timeout=16,allow_redirects=False)except Exception,e3:print e3if req.status_code==200:l_url=req.urlprint l_urlcontent=req.content.decode('utf-8')content_xpath=etree.HTML(content)try:title=content_xpath.xpath('//head/title')[0].text.strip().replace('\\','1')urllist=content_xpath.xpath('//h1/a/@href')[0].strip().replace('\\','1')intro=content_xpath.xpath('//div[@class="company_word"]')[0].text.strip().replace('\\','1')producklist=content_xpath.xpath('//*[@id="company_products"]/div[2]/div[@class="product_content product_item clearfix"]/div/h4/div/a[1]')product=""for i in producklist:product=i.text.strip()+"-"+productproductend=product.replace('\\','1')CompanyProfile=repace2.findall(content)[0].strip().replace('\\','1')manage=repace.findall(content)[0].strip().replace('\\','1')touzi_jigou=repace1.findall(content)[0].strip()area=content_xpath.xpath('//p[@class="mlist_li_desc"]')area1=""for ii in area:area1=ii.text.strip()+"_"+area1area2=area1.replace('\\','1')except Exception,e2:print e2sql="insert into lagou(id,l_url,companyurl,companuname,companyintro,companyproducte,companyintro2,manage,touzi_jigou,companyarea) values(id,'%s','%s','%s','%s','%s','%s','%s','%s','%s')" % (l_url,urllist,title,intro,productend,CompanyProfile,manage,touzi_jigou,area2)threadLock.acquire()try:cur.execute(sql)conn.commit()except Exception,e1:print e1#print sql#conn.rollback()threadLock.release()#title=content_xpath.xpath('//head/title')[0].text#print titleelse:passif __name__=="__main__":for i in range(1722,130000):url="https://www.lagou.com/gongsi/"+str(i)+".html"q_queue.put(url)#for ii in range(1):t=threading.Thread(target=crawl,)t.start()t.join()time.sleep(1)

采集了10多W数据

采集分割的内容很多 其中所有管理者的信息 学历工作经历什么都有,该公司历史的投资情况都有


需要数据的可以私密我

拉勾网认证企业信息采集相关推荐

  1. 基于J2EE+JBPM3.x/JBPM4.3+Flex流程设计器+Jquery+授权认证)企业普及版贝斯OA与工作流系统...

    基于J2EE+JBPM3.x/JBPM4.3+Flex流程设计器+Jquery+授权认证)企业普及版贝斯OA与工作流系统 课程学习地址:http://***/goods.php?id=173 本项目是 ...

  2. 双软认证企业税收优惠政策

    双软认证企业税收优惠政策 双软企业有两个证书:一个是软件产品登记证书:一个是软件企业证书. 我国已经确立了计算机软件产业在国家发展中的重要地位.为了鼓励软件产业的发展国家先后出台了多个法律法规和优惠政 ...

  3. AEO认证咨询,海关AEO高级认证企业可获得49项便利措施

    自2014年海关总署第225号令发布以来,各地进出口企业.报关行.货代公司.加贸企业对于海关AEO认证的积极性普遍不高.海关AEO认证师果子认为:这里除了企业对新业务的观望态度以外,更重要的是除了基本 ...

  4. AEO认证咨询,AEO一般认证、AEO高级认证企业享受的的优惠措施

    根据新办法及相关文件,海关根据企业信用状况将企业认定为认证企业.一般信用企业和失信企业.认证企业分为AEO高级认证企业和AEO一般认证企业.认证企业是中国海关经认证的经营者(AEO).海关根据社会信用 ...

  5. 聊城办理ISO认证企业须知

    很多企业做初次质量体系认证的时候,很容易出现各种各样的问题,让人手足无措,焦头烂额.那今天我们具体分享一下,ISO9001认证办理全方位信息! 什么是ISO9001? ISO9001全称为ISO900 ...

  6. 微信公众号企业认证/企业公众号微信认证

    1 申请微信公众号:百度搜索微信公众平台进入后使用邮箱注册账户 2 注册公众号选择合适的类型,进入微信认证-点击右上角认证详情,或者左边导航栏中的微信认证 3 需要准备的材料: 1 微信认证公函加盖公 ...

  7. ISO22000认证|企业申请ISO22000认证资料自查

    食品行业流行各种各样的体系认证,标准等,主旨还是为了保护消费者安全,保障食品安全.常见的食品体系有ISO22000认证,HACCP认证,BRC认证,IFS认证,FSSC22000认证,AIB认证,GF ...

  8. GMP认证|企业需依据产品特性制定卫生标准程序

    良好生产规范 GMP 什么是GMP认证 GMP良好生产规范(Good Manufacturing Practice), 也称CGMP,C即Current(现行),译为现场良好生产规范. GMP针对不同 ...

  9. 关于CMMI认证企业需要注意的事项

    对企业来说,高度注重的事情一定代表着它拥有着足够的商业价值,而CMMI,可以帮助企业按时.高质量交付的同时来最大化节省成本,完成从性能到管理的优化. CMMI认证作为软件开发行业的权威认证,认证过程严 ...

最新文章

  1. 干货|简单理解梯度下降及线性回归
  2. 对于jQuery的初步印象
  3. 岗位推荐 | 清华大学CoAI实验室招聘博士后
  4. QT的QScopedPointer类的使用
  5. matlab 若当标准型,若当标准型求解.pdf
  6. 把有无线网卡的机子当作无线ap无需任何软件
  7. vuex 的模块化+命名空间
  8. python二维图颜色函数_Python scipy的二维图像卷积运算与图像模糊处理操作示例
  9. android京东首页轮播代码,仿京东商品详情轮播图
  10. 2020年快手母婴生态报告
  11. java中的10的算法,Java中10个常用的排序算法
  12. 2018年6月3号(线段树(3))
  13. 排列组合计算问题中的卡塔兰数(Catalan Number)
  14. 计算机SCI期刊征稿 | 影响因子最高10+,一区,毕业/评职称不要错过!
  15. 新中大计算机知识,新中大财务软件操作步骤
  16. Maven 安装教程
  17. 以内部管理员批准模式_UAC 在管理员批准模式下运行所有管理员(Windows 10) - Windows security | Microsoft Docs...
  18. MATLAB之Simulink基础
  19. 菜菜的sklearn课堂——决策树
  20. 代理服务器的常用端口有哪些?

热门文章

  1. iqooneo3 如何不用vivo账号下载外部应用_你说iQOO Neo 3很香?抱歉,我有不同的意见...
  2. 全球经济放水之下,数字货币牛市夭折?
  3. 数学建模-马尔萨斯人口问题
  4. Python爬虫:逆向分析某酷音乐请求参数
  5. TLD(Tracking-Learning-Detection)一种目标跟踪算法
  6. pdf 无须浏览直接下载
  7. SPARQL入门(一)SPARQL简介与简单使用
  8. 享受知识饕餮盛宴,尽在2016年课程安排
  9. QCustomPlot常用操作
  10. OCR应用(证件识别、文档识别)