爬取企查查和boss直聘数据

1.boss直聘的cookie过期很快,每次只能爬取3-4页。就是过期了再复制一遍。

import requests
from lxml import etree
import pandas as pd

url_1 = "https://www.zhipin.com/c101180100/?query=%E5%A4%96%E8%B4%B8%E4%B8%9A%E5%8A%A1%E5%91%98&page="
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
"cookie": "此处省略"
}
requests_get = requests.get(url,headers=headers)
requests_get.encoding="utf-8"

2.首先找到网页的规律,复制2-3页网址对比看看,得出规律

url='https://www.zhipin.com/c101200100/?query=%E8%B7%A8%E5%A2%83%E7%94%B5%E5%95%86%E8%BF%90%E8%90%A5&page
='+str(page)+'&ka=page-'+str(page)

3.然后开始用for循环,因为cookie很容易过期,所以每次只爬取3页。

name1=[]
for page in range(1,4):
    url=url_1+str(page)+'&ka=page-'+str(page)
    requests_get = requests.get(url,headers=headers)
    html = etree.HTML(requests_get.text)
    name2=html.xpath('//div[@class="company-text"]/h3/a/text()')
    name1.extend(name2)
name4=[]
for page in range(4,7):
    url=url_1+str(page)+'&ka=page-'+str(page)
    requests_get = requests.get(url,headers=headers)
    html = etree.HTML(requests_get.text)
    name7=html.xpath('//div[@class="company-text"]/h3/a/text()')
    name4.extend(name7)
name4

4.如此一共写到12,然后保存到excel

company_name=name1+name4+name7+name12
df=pd.DataFrame()
df['公司名称']=company_name
df.to_excel('C:/Users/123/Desktop/数据.xlsx',index=False)

5.保存好之后新开一个页面重新写企查查的爬虫

import requests
from lxml import etree
import pandas as pd

df=pd.read_excel('C:/Users/123/Desktop/数据.xlsx')
name=list(df["公司名称"])
len(name)
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",
"cookie": "此处省略"}
url="https://www.qcc.com/web/search?key=%E5%87%A4%E5%B7%A2%E8%B7%A8%E5%A2%83"
requests_get = requests.get(url,headers=headers)
requests_get.encoding="utf-8"
html = etree.HTML(requests_get.text)

6.爬取公司名字的时候会出现逗号隔开的情况,可以用=‘’.join(name1)解决。

company_name=[]
for i in range(1,524):
    url="https://www.qcc.com/web/search?key="+name[i]+"&filter=%7B%22rchain%22%3A%5B%7B%22pr%22%3A%22HEN%22%7D%5D%7D"
    requests_get = requests.get(url,headers=headers)
    requests_get.encoding="utf-8"
    html = etree.HTML(requests_get.text)
    name1=html.xpath('*//*[@class="maininfo"]/a//*/text()')
    complete_name=''.join(name1)
    company_name.append(complete_name)
company_name

company_address=[]
for i in range(1,524):
    url="https://www.qcc.com/web/search?key="+name[i]+"&filter=%7B%22rchain%22%3A%5B%7B%22pr%22%3A%22HEN%22%7D%5D%7D"
    requests_get = requests.get(url,headers=headers)
    requests_get.encoding="utf-8"
    html = etree.HTML(requests_get.text)
    name2=html.xpath('*//*[@class="relate-info"]/div[3]/span/span/text()')
    company_address.append(name2)
company_address

company_num=[]
for i in range(1,524):
    url="https://www.qcc.com/web/search?key="+name[i]+"&filter=%7B%22rchain%22%3A%5B%7B%22pr%22%3A%22HEN%22%7D%5D%7D"
    requests_get = requests.get(url,headers=headers)
    requests_get.encoding="utf-8"
    html = etree.HTML(requests_get.text)
    name3=html.xpath('//*[@class="val"]/*[2]/text()')
    company_num.append(name3)
company_num

df1=pd.DataFrame()
df1['公司地址']=company_address
df1['公司名称']=company_name
df1['公司电话']=company_num
df1

df1.to_excel('C:/Users/123/Desktop/数据1.xlsx',index=False)
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
爬虫是一种自动化程序,可以模拟浏览器行为来获取网页上的数据。然而,许多网站对爬虫有限制,采取了一些措施来阻止爬虫的访问。主要有两种方法可以限制爬虫的访问:一是通过robots协议告知爬虫哪些页面可以访问,哪些不可以访问;二是通过判断HTTP头来识别请求是否由爬虫引起,网站可以拒绝爬虫的请求。 如果你想爬取boss直聘数据,可能会遇到一些反爬措施。在引用的代码块中,作者提到了一些手动改变数据信息的方法来规避反爬措施。例如,可以修改URL中的城市和职位信息来获取不同城市和职位的数据。这种方法可以在一定程度上减少被网站封禁的风险。然而,需要注意的是,这种不断改变数据信息的方法可能会使爬取数据量较少。 根据引用中的描述,爬取boss直聘数据涉及到对不同职位的要求进行解析。例如,数据分析师要求招聘者具备一定的数据分析和挖掘能力,并且熟悉Python、SQL、Excel等软件;数据挖掘师除了数据分析和挖掘能力外,还要熟悉深度学习算法,并且一些企业还要求熟悉Java、Hadoop、Spark、SQL等技术;数据架构师需要具备数据分析、数据架构和大数据能力,熟悉Python、Java、SQL、Hadoop、Spark等软件和分布式技术;AI工程师需要对人工智能、视觉图像算法、自然语言处理、产品设计有一定了解,并且熟悉Python、C等编程语言。 综上所述,如果想要爬取boss直聘数据,可以通过编写爬虫程序,并根据具体的需求解析网页上的职位信息和要求。同时,需要注意遵守网站的爬取规则,以避免被封禁或触发反爬措施。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python爬虫学习(一)爬取boss直聘一页数据](https://blog.csdn.net/weixin_45145550/article/details/112396820)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [爬取boss直聘数据并分析](https://blog.csdn.net/weixin_55018995/article/details/116902265)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值