IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> 关于urllib的使用 -> 正文阅读

[游戏开发]关于urllib的使用

1. urllib库的作用 :解析网页

URL模块代码
请求模块urllib.request
异常处理模块urllib.error
解析模块urllib.parse

2. 请求模块
举个例子:访问百度

import urllib.request

#解析一个网址 获取get请求
response = urllib.request.urlopen("http://www.baidu.com")  #把访问的网站的源码封装到一个对象当中(response)
print(response.read().decode('utf-8')) #读取并解码成中文界面

运行结果:
在这里插入图片描述
将结果复制到文本文件改后缀名为html打开:
在这里插入图片描述
在这里插入图片描述
3.解析模块
一个专门用于响应http或https的网页:http://httpbin.org/

#一个post请求(模拟用户真实登录)
import urllib.request  #请求
import urllib.parse    #解析

#获取一个post请求
data = bytes(urllib.parse.urlencode({"hello":"world"}),encoding = "utf-8")
reponse = urllib.request.urlopen("http://httpbin.org/post",data = data)
print(reponse.read().decode("utf-8"))

显示结果:
在这里插入图片描述
4.异常处理模块-超时处理

import urllib.request  #请求
import urllib.parse    #解析

try:
    reponse = urllib.request.urlopen("http://httpbin.org/get",timeout = 0.1)#设置响应时间为0.1秒
    print(reponse.read().decode("utf-8"))
except urllib.error.URLError as result:
    print("超时")

运行结果:
在这里插入图片描述
5.状态码

reponse = urllib.request.urlopen("http://httpbin.org/get")
print(reponse.status)  #显示状态码

运行结果:
在这里插入图片描述
6.响应头

import urllib.request  #请求
import urllib.parse    #解析

reponse = urllib.request.urlopen("http://www.baidu.com")
print(reponse.getheaders()) #响应头

运行结果:
在这里插入图片描述

[(‘Bdpagetype’, ‘1’), (‘Bdqid’, ‘0xbe9c7f2f000fe988’), (‘Cache-Control’, ‘private’), (‘Content-Type’, ‘text/html;charset=utf-8’), (‘Date’, ‘Fri, 29 Apr 2022 21:38:21 GMT’), (‘Expires’, ‘Fri, 29 Apr 2022 21:38:03 GMT’), (‘P3p’, ‘CP=" OTI DSP COR IVA OUR IND COM "’), (‘P3p’, ‘CP=" OTI DSP COR IVA OUR IND COM "’), (‘Server’, ‘BWS/1.1’), (‘Set-Cookie’, ‘BAIDUID=AB8EC72EAFA93C6D3740E013FF09A2F9:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com’), (‘Set-Cookie’, ‘BIDUPSID=AB8EC72EAFA93C6D3740E013FF09A2F9; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com’), (‘Set-Cookie’, ‘PSTM=1651268301; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com’), (‘Set-Cookie’, ‘BAIDUID=AB8EC72EAFA93C6D69D6BF837EFD6605:FG=1; max-age=31536000; expires=Sat, 29-Apr-23 21:38:21 GMT; domain=.baidu.com; path=/; version=1; comment=bd’), (‘Set-Cookie’, ‘BDSVRTM=0; path=/’), (‘Set-Cookie’, ‘BD_HOME=1; path=/’), (‘Set-Cookie’, ‘H_PS_PSSID=36309_31254_35915_36165_34584_35978_35863_36232_26350_36301_36313_36061; path=/; domain=.baidu.com’), (‘Traceid’, ‘1651268301354531149813734992803414403464’), (‘Vary’, ‘Accept-Encoding’), (‘Vary’, ‘Accept-Encoding’), (‘X-Frame-Options’, ‘sameorigin’), (‘X-Ua-Compatible’, ‘IE=Edge,chrome=1’), (‘Connection’, ‘close’), (‘Transfer-Encoding’, ‘chunked’)]

对应的网页头部信息:
在这里插入图片描述

7.伪装
请求头部信息伪装:
在这里插入图片描述
在这里插入图片描述

User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/100.0.4896.127 Safari/537.36

import urllib.request  #请求
import urllib.parse    #解析

url ="https://www.dpuban.com"
headers = { #伪装自己
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/100.0.4896.127 Safari/537.36"
}  #字典类型
req = urllib.request.Request(url=url,headers=headers)
response = urllib.request.urlopen(req)
print(response.read().decode("utf-8"))

python爬虫 原文章地址:
视频学习地址:https://www.bilibili.com/video/BV12E411A7ZQ?p=18&spm_id_from=pageDriver

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-05-03 09:28:08  更:2022-05-03 09:28:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:41:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码