利用百度搜索结果爬取邮箱

帮同学做一个关于爬取教授邮箱的任务,在百度搜索中输入教授的名字+长江学者+邮箱,爬取并筛选每个教授的邮箱,最后把邮箱信息写入到Excel表中:--爬取结果争取率大概在50%-60%

大致思路如下:

先利用百度搜索关键词(不断转换关键词,效果会不一样)

利用BeautifulSoup解析到百度搜索的html内容,找到主要的部分

写正则表达式,注意要过滤掉qq邮箱、163、126、vip邮箱(学者教授根本不会使用这些邮箱,他们几乎都是使用学校edu.cn、企业邮箱、gmail之类的),这样可以提高精准率

由于正则表达式没有写好,无意把中文匹配出来了,再进一步用正则表达式把中文去除掉

发现爬取出来的结果,里面很多的新闻投稿邮箱、编辑部的邮箱,设置了过滤列表进行过滤

爬取多个邮箱,counter统计出现频数最高的,作为最终的结果,如果匹配结果只有一个,则就选它为最终的结果

最后把结果信息写回到Excel表格中

由于需要大量的检索百度搜索结果,耗时比较长

爬虫代码如下:

  1 #coding:utf-8
  2 import time
  3 import requests
  4 import urllib.parse
  5 from bs4  import BeautifulSoup as BS
  6 import re
  7 from openpyxl import load_workbook
  8 from openpyxl import Workbook
  9 from collections import Counter
 10 
 11 start_time=time.time()
 12 # 加载Excel工作表以及获取表名
 13 wb1 = load_workbook(r"C:\Users\wujian\Desktop\长江学者名单1998-2015.xlsx")
 14 sheet1 = wb1.get_sheet_by_name("汇总")
 15 # 把所有的教授名字单独取出来
 16 professors=[]
 17 for x in sheet1['D']:
 18     if x.value!='教授姓名':
 19         professors.appen
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值