Python 3 爬虫(一) 简单的爬虫

URL相应内容

url 组成部分:

protocol :// hostname[:port] / path /

protocol:协议
hostname[:port] :主机名,端口名为可选参数
path:主机资源的具体位置
域名和服务器名
e.g.  www.baidu.com
baidu.com:域名
www:服务器名

Python 3爬虫内容

urllib库的使用

urllib—URL handing modules

官方文档
https://docs.python.org/3/library/urllib.html#module-urllib

 - urllib.request        用于打开读取和读取URLs的操作
 - urllib.error          包含由使用urllib.request产生的错误,可用try进行捕捉处理
 - urllib.parse          用于解析URLs
 - urllib.robotparser    用于解析robots.txt文本文件
urllib.request 具体使用

urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)
此接口函数用于打开和处理URLs信息,返回的对象response如同一个文本对象。注意,我们可以调用read(),进行读取。再通过print(),将读到的信息打印出来。

浏览器就是作为客户端从服务器端获取信息,然后将信息解析,再展示给我们的。
我们已经成功获取了信息,但是显然他们都是二进制的乱码,看起来很不方便。我们怎么办呢?
我们可以通过简单的decode()命令将网页的信息进行解码,并显示出来,

拿百度举例:

# -*- coding: UTF-8 -*-
from urllib import request

if __name__=="__main__":
    url = "http://www.baidu.com"
    response = request.urlopen(url)
    data=response.read()
    data=data.decode("UTF-8")
    print(data)
from urllib import request 和 import urllib区别

本质上和功能上没有区别,区别体现在调用的时候
使用 from urllib import request 在后面调用的时候可以只用response = request.urlopen(url) 而 使用 import urllib 在后面调用的时候要写成 response = urllib.request.urlopen(url)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值