1、导入request
from urllib import request
2、使用urlopen请求网页
url = "http://www.baidu.com"
rsp = urllib.request.urlopen(url)
看到上面一行代码,有没有觉得很长,想有一个单词来代替三个单词
使用read读取网页内容,得到数据为bytes格式
html = rsp.read()
3、使用decode解码
html = html.decode()
decode()默认的解码格式是UTF-8,好在大多数网页是UTF-8格式编码,不过有的网页是gb2312或者其他,此时需要检测网页的编码格式
4、导入chardet
import chardet
检测编码并读取内容
cs = chardet.detect(html)
html = html.decode(cs.get("encoding"))
5、使用parse把字典转换为url编码
当你需要在一个网页中进行关键字搜索时,要访问的url就会变为该网页的url+关键字,但是urlopen不能识别输入的关键字,此时需要对关键字进行编码,然后合并为一个新的url。以百度为例
url = "http://www.baidu.com/s?"
kw = input("请输入关键字")
suffix = {"kw":kw}
// parse使用之前需要导入
from urllib import parse
suffix = parse.urlencode(suffix)
fullurl = url + suffix