使用Python爬取最好大学网大学排名


Posted in Python onFebruary 24, 2018

本文实例为大家分享了Python爬取最好大学网大学排名的具体代码,供大家参考,具体内容如下

源代码:

#-*-coding:utf-8-*- 
''''' 
Created on 2017年3月17日 
@author: lavi 
''' 
import requests 
from bs4 import BeautifulSoup 
import bs4 
def getHTMLText(url): 
  try: 
    r = requests.get(url) 
    r.raise_for_status 
    r.encoding = r.apparent_encoding 
    return r.text 
  except: 
    return "" 
 
def fillUnivList(univList,html): 
  soup = BeautifulSoup(html,"html.parser") 
  for tr in soup.find("tbody").children: 
    if isinstance(tr,bs4.element.Tag): #tobody有的节点是空串,属于要判断类型进行过滤 
      tds = tr("td") #等价于tr.find_all("td") 
      univList.append([tds[0].string,tds[1].string,tds[2].string]) #NavigableString可以跨越多个层次 
 
def printUnivList(univList,num): 
  tplt = "{0:^6}\t{1:^10}\t{2:^6}" #:前的数字说明使用format函数的第几个参数填充模板 
  print(tplt.format("排名","学校名称","总分",chr(12288))) 
  for i in range(num): 
    u = univList[i] 
    print(tplt.format(u[0],u[1],u[2],chr(12288))) 
def main(): 
  url= "http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html"; 
  html = getHTMLText(url) 
  univList=[] 
  fillUnivList(univList,html) 
  printUnivList(univList,20) 
   
main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python验证码识别的实例详解
Sep 09 Python
Python操作Access数据库基本步骤分析
Sep 19 Python
解决pandas 作图无法显示中文的问题
May 24 Python
python版飞机大战代码分享
Nov 20 Python
学python安装的软件总结
Oct 12 Python
pytorch中的自定义数据处理详解
Jan 06 Python
Python random模块制作简易的四位数验证码
Feb 01 Python
Python实现一个简单的毕业生信息管理系统的示例代码
Jun 08 Python
python在一个范围内取随机数的简单实例
Aug 16 Python
Django视图类型总结
Feb 17 Python
python中time tzset()函数实例用法
Feb 18 Python
python数据可视化使用pyfinance分析证券收益示例详解
Nov 20 Python
python opencv 直方图反向投影的方法
Feb 24 #Python
python爬虫爬取淘宝商品信息
Feb 23 #Python
python爬取淘宝商品详情页数据
Feb 23 #Python
Python如何抓取天猫商品详细信息及交易记录
Feb 23 #Python
python列表生成式与列表生成器的使用
Feb 23 #Python
1分钟快速生成用于网页内容提取的xslt
Feb 23 #Python
python使用xslt提取网页数据的方法
Feb 23 #Python
You might like
php笔记之:AOP的应用
2013/04/24 PHP
Yii实现多按钮保存与提交的方法
2014/12/03 PHP
php递归调用删除数组空值元素的方法
2015/04/28 PHP
php利用ob_start()清除输出和选择性输出的方法
2018/01/18 PHP
Javascript条件判断使用小技巧总结
2008/09/08 Javascript
扩展jQuery 键盘事件的几个基本方法
2009/10/30 Javascript
js操作二级联动实现代码
2010/07/27 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
js函数排序的实例代码
2013/07/01 Javascript
jQuery实现左右切换焦点图
2015/04/03 Javascript
Jquery全选与反选点击执行一次的解决方案
2015/08/14 Javascript
Angular.js与Bootstrap相结合实现手风琴菜单代码
2016/04/13 Javascript
如何利用JSHint减少JavaScript的错误
2016/08/23 Javascript
js控制台输出的方法(详解)
2016/11/26 Javascript
JS遍历对象属性的方法示例
2017/01/10 Javascript
js中DOM三级列表(代码分享)
2017/03/20 Javascript
ES6中的箭头函数实例详解
2017/04/06 Javascript
详解Node.js access_token的获取、存储及更新
2017/06/20 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
2019/04/30 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
原生JavaScript之es6中Class的用法分析
2020/02/23 Javascript
详解ES6 扩展运算符的使用与注意事项
2020/11/12 Javascript
Python中的Numeric包和Numarray包使用教程
2015/04/13 Python
Pycharm之快速定位到某行快捷键的方法
2019/01/20 Python
Python3打包exe代码2种方法实例解析
2020/02/17 Python
解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)
2020/03/05 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2020/04/13 Python
html5的画布canvas——画出简单的矩形、三角形实例代码
2013/06/09 HTML / CSS
采购员岗位职责
2013/11/15 职场文书
大学本科毕业生的自我鉴定
2013/11/26 职场文书
普通员工辞职信
2014/01/17 职场文书
个人年度总结报告
2015/03/09 职场文书
实施意见格式范本
2015/06/05 职场文书
导游词之包公祠
2019/11/25 职场文书
PostgreSQL事务回卷实战案例详析
2022/03/25 PostgreSQL