Python爬虫实战:2017中国最好大学排名
2017-06-27 09:42
645 查看
抓取内容:
从最好大学网上抓取中国前10的大学排名、大学名称、总分,并数据格式左对齐。
http://www.zuihaodaxue.cn/zuihaodaxuepaiming2017.html
首先,看下网站的Robots协议,没有找到相关协议,可以抓取。http://www.zuihaodaxue.cn/robots.txt
接下来开始整理思路:
获取网页信息
填充列表数据
输出列表数据,并进行格式化
输出结果
完整代码:
运行结果:
![](https://oscdn.geek-share.com/Uploads/Images/Content/201911/16/a75013b0cc5ca77f5d66d2c229e7ab7f)
操作环境:Mac,Python 3.6,PyCharm 2016.2
参考资料:中国大学MOOC课程《Python网络爬虫与信息提取》
----- End -----
更多精彩内容关注我公众号:杜王丹
作者:杜王丹,互联网产品经理
从最好大学网上抓取中国前10的大学排名、大学名称、总分,并数据格式左对齐。
http://www.zuihaodaxue.cn/zuihaodaxuepaiming2017.html
首先,看下网站的Robots协议,没有找到相关协议,可以抓取。http://www.zuihaodaxue.cn/robots.txt
接下来开始整理思路:
获取网页信息
填充列表数据
输出列表数据,并进行格式化
输出结果
完整代码:
import requests from bs4 import BeautifulSoup import bs4 # 获取网页信息的通用框架 def getHtmlText(url): try: r = requests.get(url, timeout = 30) r.raise_for_status() r.encoding = r.apparent_encoding return r.text except: return '爬取失败' # 填充列表 def fillUnivList(ulist, html): soup = BeautifulSoup(html, 'lxml') for tr in soup.find('tbody').children: # 检查网页代码可以发现数据都储存在tboyd标签中,这里需要对tbody的儿子节点进行遍历 if isinstance(tr, bs4.element.Tag): # 检测标签类型,如果不是bs4库支持的Tag类型,就过滤掉,这里需要先导入bs4库 tds = tr('td') # 解析出tr标签中的td标签后,将其储存在列表tds中 ulist.append([tds[0].string, tds[1].string, tds[3].string]) # 我们需要的是排名、学校名称和总分 # 格式化后,输出列表数据 def printUnivList(ulist, num): tplt = '{:<10}\t{:<10}\t{:<10}' # 定义输出模板为变量tplt,\t为横向制表符,<为左对齐,10为每列的宽度 print(tplt.format('排名','学校名称','总分')) # format()方法做格式化输出 for i in range(num): u = ulist[i] print(tplt.format(u[0],u[1],u[2])) def main(): uinfo = [] url = 'http://www.zuihaodaxue.cn/zuihaodaxuepaiming2017.html' html = getHtmlText(url) fillUnivList(uinfo, html) printUnivList(uinfo, 10) # 选取前10所学校信息 main()
运行结果:
操作环境:Mac,Python 3.6,PyCharm 2016.2
参考资料:中国大学MOOC课程《Python网络爬虫与信息提取》
----- End -----
更多精彩内容关注我公众号:杜王丹
作者:杜王丹,互联网产品经理
相关文章推荐
- 爬虫实战(1)最好大学网大学排名
- python3.x爬虫:爬取大学排名数据
- 中国最好大学网爬取大学排名信息
- 使用Python爬取最好大学网大学排名
- python爬虫实战(一)--------中国作物种质信息网
- 中国部分大学排名爬虫
- Python爬虫实战(3):计算大学本学期绩点
- Python 爬虫实战3 计算大学本学期绩点
- Python爬虫实战(3):计算大学本学期绩点
- 中国最好大学排名
- Python爬虫实战三之计算大学本学期绩点
- 资讯 | 2018中国最好大学排名出炉,看看你的学校排第几?
- 2017中国最好学科排名出炉:计算机科学与技术排名 北大没进前三?
- 使用Python爬取最好大学网大学排名
- Python爬虫实战七之计算大学本学期绩点
- Python爬虫实战(3):计算大学本学期绩点
- Python网络爬虫实战:根据天猫胸罩销售数据分析中国女性胸部大小分布
- Python爬虫实际应用之简单可视化(Echarts)zjgsu和zju两所大学的百度贴吧一天中时段发帖规律
- Python爬虫框架Scrapy 学习笔记 10.1 -------【实战】 抓取天猫某网店所有宝贝详情
- python 爬虫 实战(一) —— 抓取学校开课数据