成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

手把手教你使用Python網(wǎng)絡(luò)爬蟲(chóng)獲取招聘信息

開(kāi)發(fā) 后端
現(xiàn)在在疫情階段,想找一份不錯(cuò)的工作變得更為困難,很多人會(huì)選擇去網(wǎng)上看招聘信息??墒钦衅感畔⒂幸恍┦清e(cuò)綜復(fù)雜的。而且不能把全部的信息全部羅列出來(lái),以外賣的58招聘網(wǎng)站來(lái)看,資料整理的不清晰。

1.前言

 

[[333120]]

現(xiàn)在在疫情階段,想找一份不錯(cuò)的工作變得更為困難,很多人會(huì)選擇去網(wǎng)上看招聘信息??墒钦衅感畔⒂幸恍┦清e(cuò)綜復(fù)雜的。而且不能把全部的信息全部羅列出來(lái),以外賣的58招聘網(wǎng)站來(lái)看,資料整理的不清晰。

 

2.項(xiàng)目目標(biāo)

獲取招聘信息,并批量把地點(diǎn)、 公司名、工資 、下載保存在txt文檔。

3.項(xiàng)目準(zhǔn)備

軟件:PyCharm

需要的庫(kù):requests、lxml、fake_useragent

網(wǎng)站如下:

 

  1. https://gz.58.com/job/pn2/?param7503=1&from=yjz2_zhaopin&PGTID=0d302408-0000-3efd-48f6-ff64d26b4b1c&ClickID={} 

點(diǎn)擊下一頁(yè)時(shí),ClickID={}每增加一頁(yè)自增加1,用{}代替變換的變量,再用for循環(huán)遍歷這網(wǎng)址,實(shí)現(xiàn)多個(gè)網(wǎng)址請(qǐng)求。

4.反爬措施

該網(wǎng)站上的反爬主要有兩點(diǎn):

1、 直接使用requests庫(kù),在不設(shè)置任何header的情況下,網(wǎng)站直接不返回?cái)?shù)據(jù)

2、同一個(gè)ip連續(xù)訪問(wèn)多次,直接封掉ip,起初我的ip就是這樣被封掉的。

為了解決這兩個(gè)問(wèn)題,最后經(jīng)過(guò)研究,使用以下方法,可以有效解決。

1、獲取正常的 http請(qǐng)求頭,并在requests請(qǐng)求時(shí)設(shè)置這些常規(guī)的http請(qǐng)求頭。

2、使用 fake_useragent ,產(chǎn)生隨機(jī)的UserAgent進(jìn)行訪問(wèn)。

5.項(xiàng)目實(shí)現(xiàn)

1、定義一個(gè)class類繼承object,定義init方法繼承self,主函數(shù)main繼承self。導(dǎo)入需要的庫(kù)和網(wǎng)址,代碼如下所示。

 

  1. import requests 
  2. from lxml import etree 
  3. from fake_useragent import UserAgent 
  4.  
  5.  
  6. class  Zhaopin(object): 
  7.     def __init__(self): 
  8.         self.url = "https://gz.58.com/job/pn2/?param7503=1&from=yjz2_zhaopin&PGTID=0d302408-0000-3efd-48f6-ff64d26b4b1c&ClickID={}"  # /zhuanchang/:搜索的名字的拼音縮寫 
  9.  
  10.     def main(self): 
  11.         pass 
  12.  
  13. if __name__ == '__main__'
  14.     Spider =  Zhaopin() 
  15.     Spider.main() 

2、隨機(jī)產(chǎn)生UserAgent。

 

  1. for i in range(1, 50): 
  2.     self.headers = { 
  3.         'User-Agent': ua.random, 
  4.     } 

3、發(fā)送請(qǐng)求,獲取響應(yīng), 頁(yè)面回調(diào),方便下次請(qǐng)求。

 

  1. def get_page(self, url): 
  2.     res = requests.get(url=url, headers=self.headers) 
  3.     html = res.content.decode("utf-8"
  4.     return html 

4、xpath解析找到對(duì)應(yīng)的父節(jié)點(diǎn)。

 

  1. def page_page(self, html): 
  2.     parse_html = etree.HTML(html) 
  3.     one = parse_html.xpath('//div[@class="main clearfix"]//div[@class="leftCon"]/ul/li'

5、for遍歷,定義一個(gè)變量food_info保存,獲取到二級(jí)頁(yè)面對(duì)應(yīng)的菜 名、 原 料 、下 載 鏈 接。

 

  1. for l in one: 
  2.    o = l.xpath('.//a/span[1]/text()')[0].strip() 
  3.    t = l.xpath('.//a//span[@class="name"]/text()')[0].strip() 
  4.    f = l.xpath('.//p[@class="job_salary"]/text()'
  5.    thr = l.xpath('.//div[@class="comp_name"]//a/text()')[0].strip() 
  6.    for e in f: 
  7.        boss = ''
  8.  
  9. %s:||%s:  
  10. 公司:%s, 
  11. 工資:%s元/月 
  12. ========================================================= 
  13.                                ''' % (o, t, thr, e) 
  14.    print(str(boss) 

6、將結(jié)果保存在txt文檔中,如下所示。

 

  1. f = open('g.txt''a', encoding='utf-8')  # 以'w'方式打開(kāi)文件 
  2. f.write(str(boss)) 
  3. # print(house_dict) 
  4. f.write("\n")  # 鍵和值分行放,鍵在單數(shù)行,值在雙數(shù)行 
  5. f.close() 

7、調(diào)用方法,實(shí)現(xiàn)功能。

 

  1. html = self.get_page(url) 
  2. self.page_page(html) 

6.效果展示

1、點(diǎn)擊綠色小三角運(yùn)行輸入起始頁(yè),終止頁(yè)。

 

 

 

 

2、運(yùn)行程序后,結(jié)果顯示在控制臺(tái),如下圖所示。

 

 

 

 

3、保存txt文檔到本地,如下圖所示。

 

 

 

 

4、雙擊文件,內(nèi)容如下圖所示。

 

 

 

 

7.小結(jié)

1、不建議抓取太多數(shù)據(jù),容易對(duì)服務(wù)器造成負(fù)載,淺嘗輒止即可。

2、本文章就Python爬取招聘網(wǎng),在應(yīng)用中出現(xiàn)的難點(diǎn)和重點(diǎn),以及如何防止反爬,做出了相對(duì)于的解決方案。

3、介紹了如何去拼接字符串,以及列表如何進(jìn)行類型的轉(zhuǎn)換。

4、代碼很簡(jiǎn)單,希望能夠幫到你。

5、歡迎大家積極嘗試,有時(shí)候看到別人實(shí)現(xiàn)起來(lái)很簡(jiǎn)單,但是到自己動(dòng)手實(shí)現(xiàn)的時(shí)候,總會(huì)有各種各樣的問(wèn)題,切勿眼高手低,勤動(dòng)手,才可以理解的更加深刻。

6、可以選擇自己喜歡的分類,獲取工作,找到自己喜歡工作。

責(zé)任編輯:華軒 來(lái)源: Python爬蟲(chóng)與數(shù)據(jù)挖掘
相關(guān)推薦

2018-05-16 15:46:06

Python網(wǎng)絡(luò)爬蟲(chóng)PhantomJS

2025-05-07 00:31:30

2018-05-16 13:50:30

Python網(wǎng)絡(luò)爬蟲(chóng)Scrapy

2018-05-14 15:27:06

Python網(wǎng)絡(luò)爬蟲(chóng)爬蟲(chóng)架構(gòu)

2018-05-22 15:30:30

Python網(wǎng)絡(luò)爬蟲(chóng)分布式爬蟲(chóng)

2021-07-14 09:00:00

JavaFX開(kāi)發(fā)應(yīng)用

2018-05-14 16:34:08

Python網(wǎng)絡(luò)爬蟲(chóng)Scrapy

2021-11-09 09:01:36

Python網(wǎng)絡(luò)爬蟲(chóng)Python基礎(chǔ)

2018-05-22 16:28:46

Python網(wǎng)絡(luò)爬蟲(chóng)URL去重

2021-05-10 06:48:11

Python騰訊招聘

2022-12-07 08:42:35

2021-01-30 10:37:18

ScrapyGerapy網(wǎng)絡(luò)爬蟲(chóng)

2021-04-01 09:02:38

Python小說(shuō)下載網(wǎng)絡(luò)爬蟲(chóng)

2011-01-10 14:41:26

2011-05-03 15:59:00

黑盒打印機(jī)

2021-09-01 14:49:48

curl2pypython工具

2021-08-02 07:35:19

Nacos配置中心namespace

2020-12-08 10:32:15

Python郵件tcp

2018-05-14 14:02:41

Python爬蟲(chóng)網(wǎng)易云音樂(lè)

2021-11-25 08:11:47

JS網(wǎng)站信息
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 午夜私人影院在线观看 | 99热这里有精品 | 精品久久久久久久久久 | 在线播放亚洲 | 亚洲免费久久久 | 99爱免费 | 91精品国产综合久久久久 | 高清av一区 | 欧美另类视频 | 日韩中文字幕 | 欧美国产视频一区二区 | 国产精品xxxx | 一区二区免费在线 | 欧美视频一区二区三区 | 中文字幕欧美日韩 | 久久久精品亚洲 | 久久亚| 97精品超碰一区二区三区 | 老司机深夜福利网站 | 欧美日韩中文字幕在线播放 | 久久99久久99 | www.日本在线播放 | 国产成人亚洲精品自产在线 | 日韩日韩日韩日韩日韩日韩日韩 | 产真a观专区 | 欧美电影免费网站 | 亚洲欧美日韩精品久久亚洲区 | 成人久久 | 免费在线看a | 国产精品无码久久久久 | 欧美在线一区二区三区 | 国产激情一区二区三区 | av黄色在线观看 | 免费一级网站 | 国产在线观看一区二区三区 | 中文字幕亚洲欧美 | 91精品国产91久久久久久吃药 | 97影院2| 欧美视频二区 | 午夜亚洲 | 国产精品日韩欧美 |