使用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中列表、字典、元组、集合数据结构整理
Nov 20 Python
对Python 多线程统计所有csv文件的行数方法详解
Feb 12 Python
用Pelican搭建一个极简静态博客系统过程解析
Aug 22 Python
如何运行带参数的python脚本
Nov 15 Python
Python网络爬虫信息提取mooc代码实例
Mar 06 Python
Django实现将views.py中的数据传递到前端html页面,并展示
Mar 16 Python
python实现3D地图可视化
Mar 25 Python
给Django Admin添加验证码和多次登录尝试限制的实现
Jul 26 Python
Python Selenium实现无可视化界面过程解析
Aug 25 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 Python
Python集合set()使用的方法详解
Mar 18 Python
python基础之//、/与%的区别详解
Jun 10 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
深入了解php4(1)--回到未来
2006/10/09 PHP
php mysql_real_escape_string函数用法与实例教程
2013/09/30 PHP
ThinkPHP上使用多说评论插件的方法
2014/10/31 PHP
php数字每三位加逗号的功能函数
2015/10/22 PHP
轻轻松松学JS调试(不下载任何工具)
2010/04/14 Javascript
jquery keypress,keyup,onpropertychange键盘事件
2010/06/25 Javascript
电子商务网站上的常用的js放大镜效果
2011/12/08 Javascript
JavaScript中的eval()函数使用介绍
2014/12/31 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
JavaScript中函数声明与函数表达式的区别详解
2016/08/18 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
JS实现websocket长轮询实时消息提示的效果
2017/10/10 Javascript
Javascript中的作用域及块级作用域
2017/12/08 Javascript
vue请求本地自己编写的json文件的方法
2019/04/25 Javascript
[01:25]DOTA2超级联赛专访iG 将调整状态找回自己
2013/06/05 DOTA
Python进行数据科学工作的简单入门教程
2015/04/01 Python
python中base64加密解密方法实例分析
2015/05/16 Python
python实现多层感知器
2019/01/18 Python
给大家整理了19个pythonic的编程习惯(小结)
2019/09/25 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
浅谈Tensorflow 动态双向RNN的输出问题
2020/01/20 Python
解决python-docx打包之后找不到default.docx的问题
2020/02/13 Python
Keras设置以及获取权重的实现
2020/06/19 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
Python和Bash结合在一起的方法
2020/11/13 Python
莫斯科制造商的廉价皮大衣:Fursk
2020/06/09 全球购物
.NET面试题:什么是值类型和引用类型
2016/01/12 面试题
介绍一下常见的木马种类
2014/11/15 面试题
年度考核自我鉴定
2014/03/19 职场文书
过程装备与控制工程专业求职信
2014/07/02 职场文书
学生顶撞老师的检讨书
2014/09/17 职场文书
Python图片处理之图片裁剪教程
2021/05/27 Python
Java中常用解析工具jackson及fastjson的使用
2021/06/28 Java/Android
mysql优化之query_cache_limit参数说明
2021/07/01 MySQL
浅谈MySQL函数
2021/10/05 MySQL
IDEA中sout快捷键无效问题的解决方法
2022/07/23 Java/Android