欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解如何使用Python網絡爬蟲獲取招聘信息

 更新時間:2022年03月01日 09:39:17   作者:Python爬蟲與數據挖掘  
在疫情階段,想找一份不錯的工作變得更為困難,很多人會選擇去網上看招聘信息??墒钦衅感畔⒂幸恍┦清e綜復雜的。本文將為大家介紹用Python爬蟲獲取招聘信息的方法,需要的可以參考一下

前言

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

項目目標

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

項目準備

軟件:PyCharm

需要的庫:requests、lxml、fake_useragent

網站如下:

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

點擊下一頁時,ClickID={}每增加一頁自增加1,用{}代替變換的變量,再用for循環(huán)遍歷這網址,實現多個網址請求。

反爬措施

該網站上的反爬主要有兩點:

1、 直接使用requests庫,在不設置任何header的情況下,網站直接不返回數據

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

為了解決這兩個問題,最后經過研究,使用以下方法,可以有效解決。

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

2、使用 fake_useragent ,產生隨機的UserAgent進行訪問。

項目實現

1、定義一個class類繼承object,定義init方法繼承self,主函數main繼承self。導入需要的庫和網址,代碼如下所示。

import requests
from lxml import etree
from fake_useragent import UserAgent


class  Zhaopin(object):
    def __init__(self):
        self.url = "https://gz.58.com/job/pn2/?param7503=1&from=yjz2_zhaopin&PGTID=0d302408-0000-3efd-48f6-ff64d26b4b1c&ClickID={}"  # /zhuanchang/:搜索的名字的拼音縮寫

    def main(self):
        pass

if __name__ == '__main__':
    Spider =  Zhaopin()
    Spider.main()

2、隨機產生UserAgent。

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

3、發(fā)送請求,獲取響應, 頁面回調,方便下次請求

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

4、xpath解析找到對應的父節(jié)點。

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

5、for遍歷,定義一個變量food_info保存,獲取到二級頁面對應的菜 名、 原 料 、下 載 鏈 接

for l in one:
    o = l.xpath('.//a/span[1]/text()')[0].strip()
    t = l.xpath('.//a//span[@class="name"]/text()')[0].strip()
    f = l.xpath('.//p[@class="job_salary"]/text()')
    thr = l.xpath('.//div[@class="comp_name"]//a/text()')[0].strip()
    for e in f:
        boss = '''

 %s:||%s: 
 公司:%s,
 工資:%s元/月
 =========================================================
                                ''' % (o, t, thr, e)
    print(str(boss)

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

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

7、調用方法,實現功能。

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

效果展示

1、點擊綠色小三角運行輸入起始頁,終止頁。

2、運行程序后,結果顯示在控制臺,如下圖所示。

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

4、雙擊文件,內容如下圖所示。

小結

1、不建議抓取太多數據,容易對服務器造成負載,淺嘗輒止即可。

2、本文章就Python爬取招聘網,在應用中出現的難點和重點,以及如何防止反爬,做出了相對于的解決方案。

3、介紹了如何去拼接字符串,以及列表如何進行類型的轉換。

4、代碼很簡單,希望能夠幫到你。

5、歡迎大家積極嘗試,有時候看到別人實現起來很簡單,但是到自己動手實現的時候,總會有各種各樣的問題,切勿眼高手低,勤動手,才可以理解的更加深刻。

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

以上就是詳解如何使用Python網絡爬蟲獲取招聘信息的詳細內容,更多關于Python爬蟲獲取招聘信息的資料請關注腳本之家其它相關文章!

相關文章

  • 一文搞懂Python中pandas透視表pivot_table功能

    一文搞懂Python中pandas透視表pivot_table功能

    透視表是一種可以對數據動態(tài)排布并且分類匯總的表格格式?;蛟S大多數人都在Excel使用過數據透視表,也體會到它的強大功能,而在pandas中它被稱作pivot_table,今天通過本文給大家介紹Python中pandas透視表pivot_table功能,感興趣的朋友一起看看吧
    2021-11-11
  • Python實現多屬性排序的方法

    Python實現多屬性排序的方法

    這篇文章主要介紹了Python實現多屬性排序的方法,非常不錯,具有一定的參考價借鑒價值,需要的朋友可以參考下
    2018-12-12
  • Python計算指定日期是今年的第幾天(三種方法)

    Python計算指定日期是今年的第幾天(三種方法)

    這篇文章主要介紹了Python三種方法計算指定日期是今年的第幾天,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • 使用Python爬蟲庫requests發(fā)送請求、傳遞URL參數、定制headers

    使用Python爬蟲庫requests發(fā)送請求、傳遞URL參數、定制headers

    今天為大家介紹一下Python爬蟲庫requests的發(fā)送請求、傳遞URL參數、定制headers的基礎使用方法
    2020-01-01
  • python 使用正則表達式按照多個空格分割字符的實例

    python 使用正則表達式按照多個空格分割字符的實例

    今天小編就為大家分享一篇python 使用正則表達式按照多個空格分割字符的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python+Selenium實現讀取網易郵箱驗證碼

    Python+Selenium實現讀取網易郵箱驗證碼

    在自動化工作中,有可能會遇到一些發(fā)送郵箱驗證碼類似的功能。本文將利用Python?Selenium實現自動化讀取網易郵箱驗證碼,感興趣的可以了解一下
    2022-03-03
  • Python實現SVN的目錄周期性備份實例

    Python實現SVN的目錄周期性備份實例

    這篇文章主要介紹了Python實現SVN的目錄周期性備份,實例分析了Python實現SVN周期性備份的原理與實現技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Python日期的加減等操作的示例

    Python日期的加減等操作的示例

    本篇文章主要介紹了Python日期的加減等操作的示例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Python獲取當前路徑實現代碼

    Python獲取當前路徑實現代碼

    這篇文章主要介紹了 Python獲取當前路徑實現代碼的相關資料,需要的朋友可以參考下
    2017-05-05
  • Python+matplotlib繪制多子圖的方法詳解

    Python+matplotlib繪制多子圖的方法詳解

    Matplotlib是Python中最受歡迎的數據可視化軟件包之一,它是?Python常用的2D繪圖庫,同時它也提供了一部分3D繪圖接口。本文將詳細介紹如何通過Matplotlib繪制多子圖,需要的可以參考一下
    2022-07-07

最新評論