美文网首页Python精选代码改变世界Pythoner集中营
Python:获取 V2ex 中的工作实习信息

Python:获取 V2ex 中的工作实习信息

作者: 一名普通用户 | 来源:发表于2017-08-10 17:23 被阅读0次

v2ex 中酷工作节点经常有IT 工作相关的招聘信息。正式工作和实习都有。
以下的程序用浏览器和ctrl+f完全能完成,但是明显效率太低。

程序不复杂,功能是高亮显示标题中包含关键词(可以自定义关键词)的贴,并输出地址。
不得不说 v2ex 中标题起得很规范,一般都是[地点]+[公司]+[工作内容]

还是用了 BeautifulSoup 和 requests 这两个库。

参考:
Quickstart — Requests 2.18.3 documentation
Beautiful Soup 4.4.0 文档 — beautifulsoup 4.4.0 文档

要留意的是关键词是只要满足一个就高亮输出标题,并非高亮输出该关键词。

#!/usr/bin/python3
# -*- coding:utf-8 -*-

import requests,re
from bs4 import BeautifulSoup

keywords = ['北京','实习'] # 关键词可以自定义

for i in range(1,5): #从第一页到第四页,想要更多内容自行调整数字
    html = requests.get('https://www.v2ex.com/go/jobs?p='+str(i)).content

    soup = BeautifulSoup(html,'lxml')

    topic = soup.find('div',attrs = {'id':'TopicsNode'}) #定位

    for val in topic.find_all('div'):
        if 'cell' not in val['class']:
            continue

        text = val.getText().replace('\n','') #去除多余换行符

        bold = False

        for var in keywords:
            if var in text:
                bold = True #存在关键词则高亮显示

        if bold:
            print("\033[32;1m " + text + "\033[0m")
            pattern = re.compile('t_([0-9]+)')
            res = pattern.match(val['class'][2]) #找到贴的地址
            if res:
                print("\033[32;1m " + 'https://www.v2ex.com/t/'+res.group(1) + "\033[0m")
        else:
                print(text)

效果如下

screenshot.png

其实还有很多可以改进的地方,如果你有更好的 idea,欢迎评论。

来自个人 Python 文集

相关文章

  • Python:获取 V2ex 中的工作实习信息

    v2ex 中酷工作节点经常有IT 工作相关的招聘信息。正式工作和实习都有。以下的程序用浏览器和ctrl+f完全能完...

  • Day18psutil&图形界面

    psutil 用Python来编写脚本简化日常的运维工作是Python的一个重要用途。在Python中获取系统信息...

  • python中获取对象信息

    拿到一个变量,除了用 isinstance() 判断它是否是某种类型的实例外,还有没有别的方法获取到更多的信息呢?...

  • psutil 简单使用

    在 Python 中,可以使用psutil获取系统信息,用于系统监控、性能分析、进程管理等。 安装 获取CPU信息...

  • pydoc用法简介

    python中pydoc模块可以从python代码中获取docstring,然后生成帮助信息。 纯文本帮助 win...

  • Python 爬取拉钩网异步加载页面

    如下是我简单的获取拉钩网异步加载页面信息的过程获取的是深圳 Python 岗位的所有信息,并保存在Mongo中(对...

  • Python中获取异常(Exception)信息

    前言 异常信息的获取对于程序的调试非常重要,可以有助于快速定位有错误程序语句的位置。下面介绍几种python中获取...

  • 【【python实战】根据DOI号批量下载参考文献

    在上一篇中,写了如何获取某篇英文文献pdf的参考文献信息。【python实战】获取英文文献pdf中参考文献信息[h...

  • day3-python3类

    今天了解了python3中的面向对象编程 包括: 属性和封装 继承和多态 获取对象信息 练习代码链接:python...

  • 实时获取Linux系统的CPU、内存和磁盘信息

    本篇博客讲了如何使用python脚本实时的获取Linux系统的具体的信息。 获取CPU相关的信息 首先获取CPU的...

网友评论

    本文标题:Python:获取 V2ex 中的工作实习信息

    本文链接:https://www.haomeiwen.com/subject/tjnhrxtx.html