爬虫实战(1)——爬取校内网招聘信息的名称
来源:互联网 发布:淘宝店铺活动怎么推广 编辑:程序博客网 时间:2024/04/27 16:42
最近焦虑感比较强,在思考自己以后从事的工作,与其凭空思考,不如来看点实际的数据,于是爬取了校内网的招聘信息研究下。
编写爬虫之前,我们需要先思考爬虫需要干什么、目标网站有什么特点,以及根据目标网站的数据量和数据特点选择合适的架构。编写爬虫之前,推荐使用Chrome的开发者工具来观察网页结构。在Windows和Linux,对应的快捷键是"F12"。效果如下:
OK,可以看出,这个页面其实有一个列表,其中放着20条招聘信息。我们选中某一条信息,右键选择检查即可查看选中条目的HTML结构。如下图所示:
到这一步,我们已经得到的信息有如下:
- 每页有20条招聘信息
- 招聘列表在页面上的位置为tbody的标签中。
- 每条招聘信息放在这个tr标签里
完整代码如下:
# coding: utf-8# In[105]:import codecsimport os import requestsfrom bs4 import BeautifulSoupos.chdir("D:\\python study\\code")DOWNLOAD_URL = 'http://www.cc98.org/list.asp?boardid=235&page=2&action='def download_page(url): return requests.get(url).contentdef parse_html(html): soup = BeautifulSoup(html) title_list_soup = soup.find('tbody') title_name_list = [] for title_tr in title_list_soup.find_all('tr', attrs={'style': 'vertical-align: middle;'}): detail = title_tr.find('td', attrs={'style': 'text-align: justify;'}) title_name = detail.find('span').getText() title_name_list.append(title_name) next_page = soup.find('div', attrs={'align': 'right'}).find('a',text="[下一页]") while i: return title_name_list, DOWNLOAD_URL + next_page['href'] return title_name_list, DOWNLOAD_URL + next_page['href']def main(): url = DOWNLOAD_URL with codecs.open('titles1', 'wb', encoding='utf-8') as fp: for i in range(4): html = download_page(url) titles1, url = parse_html(html) fp.write(u'{titles1}\n'.format(titles1='\n'.join(titles1))) if __name__ == '__main__': main()
- 爬虫实战(1)——爬取校内网招聘信息的名称
- scrapy爬虫实战(二)-------------爬取IT招聘信息
- 初学者教程:第一只爬虫——爬取招聘信息(一)
- 初学者教程:第一只爬虫——爬取招聘信息(二)
- 初学者教程:第一只爬虫——爬取招聘信息(三)
- 爬虫实战2—动态网页的爬取
- 简易爬虫爬取51job招聘信息
- 爬取招聘信息
- Web Spider实战1——简单的爬虫实战(爬取"豆瓣读书评分9分以上榜单")
- python3 [爬虫入门实战] 爬虫之使用selenium 爬取百度招聘内容并存mongodb
- python爬虫实战 | 爬取豆瓣TOP250排名信息
- Python爬虫实战:爬取官员官方信息
- Python爬虫(1)——基于BeautifulSoup爬取豆瓣电影信息
- 《python爬虫实战》:爬取淘宝上MM的信息和照片
- Ptyhon爬虫实战(七):爬取汽车公告网上的批次排量等信息
- Python 爬虫实战入门——爬取汽车之家网站促销优惠与经销商信息
- Python3爬虫实战:爬取大众点评网某地区所有酒店相关信息
- [python爬虫] 招聘信息定时系统 (一).BeautifulSoup爬取信息并存储MySQL
- css3flex方式水平,垂直居中
- ActiveMQ消息策略
- PL/SQL Developer链接服务器上的Oracle
- 字符编码和gcc问题
- ionic环境搭建
- 爬虫实战(1)——爬取校内网招聘信息的名称
- 常见兼容问题
- Java 类和对象
- python matplotlib 中文显示乱码
- [总结]jvm总结
- MySQL 5.7.18-win64 免安装配置(windows版)
- Redis常见面试题(一)
- Android 应用更新总结
- golang 常规优化 备忘