在 牛客网--求职--笔试日历 可以笔试时间每天都有哪些公司有笔试,如下图

一、需求

1、看看这个有笔试的公司哪家你还没看过。

2、看看自己投过的公司哪家这个月有笔试及笔试的时间。

当然,你还是得把你投的记在excel中,把已笔试的也记下来!

2、代码

from selenium import webdriver
from collections import deque
import pandas as pdindex_jin = None  # 定位“今天”的索引
my_month = None # 记录月份def first_extract(url):''':param url::return:清洗后的今天以后的笔试,因为如果笔试已经过去就没啥意义再看了。'''global index_jinglobal my_month# 实例化ChromeOptions类options = webdriver.ChromeOptions()# 加参配置options.add_argument('--disable-gpu')options.add_argument('blink-settings=imagesEnabled=false')options.add_argument('disable-infobars')# 加入配置,初始化驱动driver = webdriver.Chrome(chrome_options=options)driver.get(url=url)# 浏览器最大化driver.maximize_window()# 找到当前年份与月份current_month = driver.find_element_by_xpath(xpath='//div[@class="current-date"]/span[@class="current-mouth"]')current_month = str(current_month.text)my_month = current_month.split('-')[-1]# 找到所有信息all = driver.find_elements_by_xpath(xpath='//div[@id="jsCpn_9_component_0"]//td')# print(all)d = deque([])for i in range(len(all)):# 进行初步的清洗if all[i].text == '':continuecontent = str(all[i].text)content = content.replace('\n',' ').strip(' +').strip(' 我要添加').strip(' +')content = content.strip('技术类').strip('非技术类')if '今' in content:index_jin = icontent = content.strip('今 ')if len(content.split(' ')[0]) == 1:content = current_month +'-0' + contentelse:content = current_month + '-' + contentimport rep = re.compile('(.*?)')M = set(p.findall(content))for m in M:content = content.replace(m,'')d.append(content)return list(d)def last_extract(my_list):my_list = my_list[index_jin:] # 把今天之前的给去掉,因为我们只关心今天之后的日期d = {}for l in my_list:l = l.split(' ')i = 2the_date = l[0]while i < len(l):if d.get(l[i]):d[l[i]].append(f'{the_date}.{l[i-1]}')else:d[l[i]] = []d[l[i]].append(f'{the_date}.{l[i-1]}')i += 2return dmylist = first_extract(url='https://www.nowcoder.com/school/calendar')
mydict = last_extract(mylist)def new(my_dict):company = pd.read_excel(io=r'C:\Users\admin\Desktop\校招.xlsx',header=0)company['已看过'] = company['已看过'].astype(str)checked_company1 = list(company['已看过'])checked_company2 = []for c in checked_company1:checked_company2.append(c.upper())no = []for d in mydict.keys():d = d.upper()if d not in checked_company2:no.append(d)for n in no:for c in checked_company2:if c in n:no.remove(n)for c in checked_company2:for n in no:if n in c:no.remove(n)breakprint(f'!!!牛客网上{my_month}月的有笔试的公司中,你还没看过这些公司:!!!\n{no}')def look_your_not_test(my_dict):company = pd.read_excel(io=r'C:\Users\admin\Desktop\校招.xlsx',header=0)company['已投'] = company['已投'].astype(str)company['已笔试'] = company['已笔试'].astype(str)# 找出还没笔试的checked_company1 = list(company['已投'])checked_company2 = list(company['已笔试'])for c2 in checked_company2:if c2 in checked_company1:checked_company1.remove(c2)last = []for c in checked_company1:for k in my_dict.keys():if c in k or c == k:last.append(k)print(f'{my_month}月你已投但未参加笔试的公司有相关笔试安排的公司如下:')print(last)print(f'你已投但未参加笔试的公司{my_month}月的笔试安排如下:')for l in last:print(f'{l}:{my_dict[l]}')new(mydict)
look_your_not_test(mydict)

3、结果

selenium自动化的过程图上传失败了,输出凑合看看吧。

【爬虫】牛客网简易爬虫(二)用Selenium看看你投过简历的公司这个月哪些有笔试+笔试时间相关推荐

  1. 牛客网SQL实战二刷 | Day10

    「牛客网SQL实战二刷」是个系列学习笔记博文,今天解析7道SQL题目- 第55 - 61题. 每篇笔记的格式大致为,三大板块: 大纲 题目(题目描述.思路.代码.相关参考资料/答疑) 回顾 ❤️「往期 ...

  2. 牛客网SQL实战二刷 | Day2

    「牛客网SQL实战二刷」是个系列学习笔记博文,每天解析6道SQL题目- 今天是第7-12 题!该系列的其他博文,可在「我的博客」 中查看- 每篇笔记的格式大致为,三大板块: 大纲 题目(题目描述.思路 ...

  3. 牛客网SQL实战二刷 | 完整解析 -- 目录索引

    「牛客网SQL实战二刷」是个系列学习笔记博文,Day1 - Day10,每天解析6道SQL题目- 初衷是留给自己一份笔记,也希望能分享给「一起学习SQL的你」? 每篇笔记的格式大致为,三大板块: 大纲 ...

  4. 牛客网在线编程——二维数组中的查找

    今天是第二次用牛客的在线编程,上次还是去年的七月一号,已然过去近一年的时间,遇到了不少坑,首先题目看错了,没看到数据是有序的,其次就是对二维数组的输入有些不解,是用户手动输入还是现成的,没有说清楚,最 ...

  5. 2017年牛客网校招模拟二

    题目如下: [编程题] 最长公共连续子串 牛牛有两个字符串(可能包含空格),牛牛想找出其中最长的公共连续子串,希望你能帮助他,并输出其长度. 输入描述: 输入为两行字符串(可能包含空格),长度均小于等 ...

  6. 【回眸】近期牛客网刷刷刷(二)C(++)字符串Linux专题

    牛客网知识点(二)(++)&字符串&Linux专题 串的模式匹配, 是求第一个字符串(模式串)在第二个字符串(主串)中的位置 String的值是不可变的,这就导致每次对String的操 ...

  7. 牛客网刷算法题的输入输出(C++)

    内容简述 该篇文章将对牛客网刷题中关于输入输出的一些问题作一个总结.每年互联网公司的招聘都必不可少会有算法题,因此平时很多人都会去一些刷题网站进行刷题来学习.这里面用的比较多的刷题网站是leetcod ...

  8. 爬虫实现爬取牛客网数据结构试题

    1 目标 爬取牛客网上关于<数据结构>的试题. 试题链接 进入网页可以看到,如果选择<数据结构>的某个知识点组卷,一次最多只能出30题. 因此,想法就是用程序一次将30题全部爬 ...

  9. 牛客网获取输入rowinput_Python爬虫入门例题:抓取牛客网题目

    最近做题的时候要写一些题解,在把牛客网的题目复制下来的时候,数学公式的处理比较麻烦,所以我用Python的selenium.urllib.request和BeautifulSoup4库对题目信息进行了 ...

最新文章

  1. [安卓] 12、开源一个基于SurfaceView的飞行射击类小游戏
  2. JDBC的入门案列以及JDBC的对事务的管理
  3. linux mysql数据库备份并删除前一分钟的数据
  4. 基于or1200最小sopc系统搭建(一)--搭建及仿真(DE2,DE2-70)
  5. 设计模式学习笔记——组合(Composite)模式
  6. boost::asio async_write也不能保证一次发完所有数据 二
  7. unity双面显示shader
  8. MFC Date Time Picker的使用
  9. mysql 嵌套查询优化
  10. Python入门-编写简单名片管理系统
  11. java定时任务不执行_【SpringBoot】为什么我的定时任务不执行?
  12. C语言 结构体指针强制转换,c中结构体指针的强制类型转换
  13. hotmai邮箱服务器在境外吗,服务器Hotmail邮箱pop3服务器设置方法
  14. c++计算一维数组中的最大元素
  15. 用JAVA怎么做个视图_java问题 可以把用JFrame做出来的具有视图层的小程序放在桌面上当一个小软件吗?...
  16. google即将进入游戏产业
  17. layui查档页面_首页--layui后台管理模板 2.0
  18. Linux 重启网络服务
  19. python 中^是什么意思,python 中%是什么意思
  20. Verilog 带符号的数值运算 乘法器

热门文章

  1. 初识Vulkun(9):图形流水线/管道
  2. 糖基化(glycosylation)
  3. O2OA开发相关教程天梯(更新日期:2019-02-28)
  4. 清华2020计算机系张晨,清华公布2020特奖候选人名单!平均21岁,还有一姚班大神...
  5. android 开放聊天室
  6. ​Cocos Creator入门实战:桌球小游戏
  7. Sublist3r ---- 子域名枚举工具
  8. 关于TIME_WAIT数量太多的处理
  9. 伦敦银价格换算 在线
  10. java 读取mysql blob字段乱码