测试之道--网络爬虫系列3(urllib库介绍)

  • urllib库简介
    urllib是python3.x中用于操作URL的一个模块(库),合并了python2.x中的urllib、urllib2库。

  • 快速爬取网页
    import urllib.request as url_req
    with url_req.urlopen(“http://www.baidu.com“) as file:
    下面要读取网页内容
    法一(一行一行读):
           for line in file:
              print(line)
    法二(一次性全部读出来):
           page = file.read()
              print(page)
    file有以下几种方法:
    file.readline():执行一次读取一行
    file.read():读取全部存入一个字符串
    file.readlines():返回一个列表,列表的每一项为网页内容的每一行
    需要注意的有以下两点:
    1)file对象执行file.read()后文件指针就指向了最后,所以再次执行时返回的就是空串了,但是file对象又没有seek方法,所以只能重新执行urlopen(url)或者将page=file.read()赋值给一个变量以便于后续处理。
    2)file.read()、file.readline()方法返回的字符串为b”…”二进制字符串,所以打印时会有一个b开头,且中文显示为十六进制,且即使print这个字符串,里面的转义字符还是不会被解析,解决方法可以为:print(file.read().decode(‘utf-8’))或者print(file.read().decode());再转化为二进制文件的方法为:print(file.read().decode().encode()),即转化方法如下:二进制.decode()—》普通字符串;普通字符串.encode()—》二进制。

  • 将爬取的网页以网页的形式保存到本地
    思路一:
    1)将爬取的网页内容read()出来赋值给一个变量page
    2)以写入的方式打开一个本地文件࿰

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值