要求
本例主要希望读者联系requests的使用,试着用它请求阳光电影网的首页获取页面源码,并在控制台打印出来,请求地址为:http://www.scyky.com/,需要实现的目标如下:
(1)构造一个访问阳光电影网的请求(url , headers)。
(2)输出请求状态码。
(3)输出请求的源码。
(4)将源码打印到控制台。
实现思路
- 输入网址http://www.scyky.com/,进入阳光电影网首页。
- 寻找header信息。按【F12】键进入调试模式,切换到【Network】选项卡,选择一个请求的header,并复制相关信息。
- 分析页面源码,获取编码方式。在网页中右击,在弹出的快捷键菜单中选择【查看网页源码】选项进入源码页面。可以发现,charset是utf-8。
- 依据获取的信息进行requests编码。
请求源码
1 import requests 2 3 url = 'http://www.scyky.com/' 4 # 设置请求头 5 headers = { 6 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', 7 'Accept-Encoding':'gzip, deflate', 8 'Accept-Language':'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', 9 'Cache-Control':'max-age=0', 10 'Connection':'keep-alive', 11 'Cookie':'Hm_lvt_e9ddc99418411f9404610f615b91afa5=1634628491,1634628641; Hm_lpvt_e9ddc99418411f9404610f615b91afa5=1634628657; __gads=ID=9c53e50da4011ca3-2203967fb2cc00d6:T=1634628491:RT=1634628491:S=ALNI_MZHlYFvVNl5KojGNMC7Mucdw5TIrg', 12 'Host':'www.scyky.com', 13 'Upgrade-Insecure-Requests':'1', 14 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0' 15 } 16 # 定义一个request对象 17 req = requests.get(url,headers=headers) 18 # 获取状态码 19 print(req.status_code) 20 # 指定网页的编码方式 21 req.encoding = 'utf-8' 22 # 获取网页源码,将req.content返回的文本赋值给html变量,然后打印到控制台 23 html = req.content 24 print(html)