python简单爬虫-Python简单爬虫

简单抓取网页的代码

import requests#导入requests包

from bs4 import BeautifulSoup#从bs4中导入BeauifulSoup包

import re#导入正则表达式的包

r= requests.get("http://baidu.com")

r.encoding= "utf-8"#就没有进行其他异常判断了,做个简单的HTML网页的爬虫

soup =BeautifulSoup(r.text)

type(soup)#查看当前soup对象的类型

r.head#此后就可以抓取rr对象的属性了,比如head,title,body等

如果要抓取本地的静态网页的代码的话,我曾经抓取不成功,但是我想了其他的办法,还是使用上述代码,只不过url地址换成了本地的文件地址了而已,需要注意的是,我是在IDEA里面编写并且运行我的HTML代码的,并且通过IDEA生成了一个本地局域网的端口,复制它的路径,再导入url中,即可抓取本地静态HTML代码,如果我把这个浏览器或则IDEA关了的话,则python抓取的时候则会报错。

下面是爬虫爬取大学排名的代码:

importrequestsfrom bs4 importBeautifulSoup

allUniv= []#建立一个二维列表,存储所有表格信息

def getHTMLText(url):#获取传入的地址

try:#进行异常的处理

r = requests.get(url,timeout = 30)#参数1:某网页的url地址,参数2:设定每次请求超时时间为n秒

r.raise_for_status()#如果次参数不是200,则产生异常,进入异常处理语句,否则程序继续往下走

r.encoding = "utf-8"#将获取的内容转码,使中文能够正常显示而不会产生乱码

return r.text#HTTP相应内容的字符串形式,即url对应的页面内容

except:return ""

deffillUnivList(soup):

data= soup.find_all("tr")#通过soup对象的find_all属性找到抓取的网页中的所有tr标签

for tr indata:

ltd= tr.find_all("td")#再在每个tr标签中找到所有的td标签

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值