您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關Python怎么爬取招聘信息,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
爬取所有的職位信息信息
職位名
職位url
職位類型
職位人數
工作地點
發布時間
3.1. 配置需要爬取的目標變量
對于新手小白想更輕松的學好Python基礎,Python爬蟲,web開發、大數據,數據分析,人工智能等技術,這里給大家分享系統教學資源,加下我V:itz992 【教程/工具/方法/解疑】 class TecentjobItem(scrapy.Item): # define the fields for your item here like: positionname = scrapy.Field() positionlink = scrapy.Field() positionType = scrapy.Field() peopleNum = scrapy.Field() workLocation = scrapy.Field() publishTime = scrapy.Field()
3.2. 寫爬蟲文件scrapy
# -*- coding: utf-8 -*- import scrapy from tecentJob.items import TecentjobItem class TencentSpider(scrapy.Spider): name = 'tencent' allowed_domains = ['tencent.com'] url = 'https://hr.tencent.com/position.php?&start=' offset = 0 start_urls = [url + str(offset)] def parse(self, response): for each in response.xpath("//tr[@class = 'even'] | //tr[@class = 'odd']"): # 初始化模型對象 item = TecentjobItem() item['positionname'] = each.xpath("./td[1]/a/text()").extract()[0] item['positionlink'] = each.xpath("./td[1]/a/@href").extract()[0] item['positionType'] = each.xpath("./td[2]/text()").extract()[0] item['peopleNum'] = each.xpath("./td[3]/text()").extract()[0] item['workLocation'] = each.xpath("./td[4]/text()").extract()[0] item['publishTime'] = each.xpath("./td[5]/text()").extract()[0] yield item if self.offset < 100: self.offset += 10 # 將請求重寫發送給調度器入隊列、出隊列、交給下載器下載 # 拼接新的rurl,并回調parse函數處理response # yield scrapy.Request(url, callback = self.parse) yield scrapy.Request(self.url + str(self.offset), callback=self.parse)
3.3. 編寫yield需要的管道文件
import json class TecentjobPipeline(object): def __init__(self): self.filename = open("tencent.json", 'wb') def process_item(self, item, spider): text = json.dumps(dict(item),ensure_ascii=False) + "\n" self.filename.write(text.encode('utf-8')) return item def close_spider(self, spider): self.filename.close()
3.4. setting中配置請求抱頭信息
DEFAULT_REQUEST_HEADERS = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language': 'en', } 對于新手小白想更輕松的學好Python基礎,Python爬蟲,web開發、大數據,數據分析,人工智能等技術,這里給大家分享系統教學資源,加下我V:itz992 【教程/工具/方法/解疑】
以上就是Python怎么爬取招聘信息,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。