爬虫小实例

获取中国大学排名信息爬取

网址:最好大学网
相关库:bs4 、requests
相关知识点:format(汉语对齐)

from bs4 import BeautifulSoup
import re
import bs4
import requests
//获取html字符串
def get_url_text(url):
    try:
        //链接地址
        r=requests.get(url)
        //判断是否连接成功
        r.raise_for_status()
        //转换编码方式
        r.encoding=r.apparent_encoding
        //返回html字符串信息
        return r.text
    except:
        return ""
//把html字符串转换成html格式,提取部分数据
def fill_univ_list(html,ulist):
	//使用BeautifulSoup将html字符串转换成html格式
    soup=BeautifulSoup(html,'html.parser')
    //循环遍历tbody标签,获取其子节点标签内容
    for tr in soup.tbody.children:
        # 判断tr的类型是否为Tag,过滤掉非tr数据
        if isinstance(tr,bs4.element.Tag):
            # tr(‘td’)是tr.find_all('td')的缩写
            tds=tr('td')
            ulist.append([tds[0].string,tds[1].string,tds[4].string])
    return ulist
//按格式打印输出
def print_ulist(ulist,n):
	//{1:{3}^6}解释:1是学校名称字节不足时,填充3类型(chr(12288))汉字字符,^居中,6六个字符大小
    print("{0:^10}\t{1:{3}^6}\t{2:>12}".format('排名','学校名称','评分',chr(12288)))
    for i in range(n):
    	//>右对齐
        print("{0:^10}\t{1:{3}^10}\t{2:>10}".format(ulist[i][0],ulist[i][1],ulist[i][2],chr(12288)))


if __name__=="__main__":
    url='http://www.zuihaodaxue.com/zuihaodaxuepaiming2019.html'
    html=get_url_text(url)
    ulist=fill_univ_list(html,[])
    //展示20条数据
    print_ulist(ulist,20)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值