欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

用python搜集事业单位招聘信息,实现分专业查找

程序员文章站 2024-03-19 22:45:22
...

用python搜集事业单位招聘信息

一、需求

一个朋友,准备考事业编,从“事业单位招聘考试网”里去了看哪个职位能适合自己

困扰他的是,这个网站里每天回有一堆信息,他每天都要一个页面一个页面的打开,然后点击里面的excle或者word,再去看看哪个职位适合自己的专业

二、解决想法(纯初学者)

  1. 利用python自动搜集所有的excle或者word
    最终实现方式及进度:只实现了匹配地址

  2. 合并多个excle工作簿为一个工作簿,合并多个word为一个word
    最终实现方式及进度:从知乎里找的用“宏”来实现的

  3. excle自动找出合并后文件中的关键字(这里指的是专业)的那一行
    最终实现方式及进度:ctrl+F,哈哈

三、开始解决

3.1 python自动搜集所有的excle或者word(只实现了匹配地址)

# 搜集事业编招聘信息中,每一个页面中的职位表
# coding = utf-8
# 2020-03-17

import requests
from lxml import etree

# 1.每个页面的地址,已通过后裔搜集器爬取到
pages = [
    "http://xxxxxxxxxxx.html",
    "http://yyyyyyy.html"
]

# 2.打印出获取到的xls,xlsx,doc,docx地址

for url in pages:

    # 获取网页html(源代码)
    html = requests.get(url)
    # 将转换编码为网页的编码,不然由于有中文,会出现乱码
    html.encoding = html.apparent_encoding
    html = html.text
    
    root = etree.HTML(html)
    # xpath折腾了2个小时,看了个案例,搞懂了,幸亏这个网页规则简单
    node_list = root.xpath("//div[@class='zhengwen']/p/a")

    # 遍历,打印获取到的地址
    for node in node_list:
        print (node.attrib['href'])


打印出来的都是
http://xxxxxxxxxxx.xls
http://xxxxxxxxxxx.xlsx
http://xxxxxxxxxxx.doc
http://xxxxxxxxxxx.docx

有了地址之后,复制,粘贴,迅雷下载,哈哈哈

3.2 合并多个excle工作簿为一个工作簿

从知乎里找的用“宏”来实现的,仅excle。word还没开始搞
注意改xlsx,xls

Sub 工作薄间工作表合并()

Dim FileOpen
Dim X As Integer
Application.ScreenUpdating = False
FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xlsx),*.xlsx", MultiSelect:=True, Title:="合并工作薄")
X = 1
While X <= UBound(FileOpen)
Workbooks.Open Filename:=FileOpen(X)
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
X = X + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub


errhadler:
MsgBox Err.Description
End Sub

作者:知乎用户
链接:https://www.zhihu.com/question/20366713/answer/14911814
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

3.3 excle关键字查找

最终实现方式及进度:ctrl+F,哈哈

相关标签: 实例