日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

仿拉钩app(一)---爬虫数据准备

發布時間:2025/3/8 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 仿拉钩app(一)---爬虫数据准备 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

工欲善其事必先利其器,準備做一個拉鉤的app,但是沒數據可怎么辦,那就直接扒褲衩去爬吧 一般爬蟲的思路為:

  • 分析頁面結構
  • 是否有接口
  • 模仿請求(解決反爬的各種方式)
  • 解析數據
  • 存儲數據
  • 按照以上的思路,先分析了一波拉鉤網的結構,發現拉鉤是直接通過接口傳遞數據的(這也太爽了),但是有ip訪問限制,大概是1分鐘請求5次的頻率,所以準備一個ip代理池(土豪可以直接買一個)

    接下來直接上代碼了

    配置信息:

    client = pymongo.MongoClient(host='localhost', port=27017) db = client['data_name'] data_collection = db['data_collection '] headers = {"Referer": "https://www.lagou.com/jobs/list_",#必填,否則沒數據"User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 ""(KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36", } 復制代碼

    篩選關鍵詞:

    keywords = ['java','python','前端',...#你想要的崗位或要求 ] 復制代碼

    主要爬取流程 先使用本地ip獲取->當被限制時,從代理ip池中取出ip爬取數據(該ip不可用則刪除,可以使用則連續使用該ip)->將爬取的數據,進行查重并存儲。

    base_request = requests.post(url, data=data, headers=headers, timeout=3) if not base_request.json().get('content', ''):flag = Falsewhile not flag: # 若代理ip沒走通則換一個try:r = requests.post(url, data=data, headers=headers, timeout=3, proxies=proxies)if not r.json().get('content', ''):raise Exception('這個ip不能用')save_to_db(r.json().get('content', '')) # 存入數據庫flag = True # 成功獲取數據跳出循環except Exception as e:if 'HTTPSConnectionPool' in str(e):delete_proxy(proxy) # 代理本身不可用則刪除該代理proxy = str(get_proxy(), encoding='utf-8')proxies = {'http': 'http://{}'.format(proxy),'https': 'http://{}'.format(proxy),} # 切換代理else:save_to_db(base_request.json().get('content', ''),'data') # 存入數據庫def save_to_db(content, now_type):if now_type == 'data':data_list = contentfor item in data_list:print(item)find_data = data_collection .find_one({'companyId': item.get('companyId')})if not find_data: # 查重后插入數據庫data_collection .insert(item)復制代碼

    詳細代碼戳

    總結

    以上是生活随笔為你收集整理的仿拉钩app(一)---爬虫数据准备的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。