Python 爬虫 URL 编码和 GETPOST 请求 | 学习笔记

简介: 快速学习 Python 爬虫 URL 编码和 GETPOST 请求

开发者学堂课程【Python 爬虫实战:Python  爬虫 URL 编码和 GETPOST 请求 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/555/detail/7642


Python 爬虫 URL 编码和 GETPOST 请求


内容简介

1、 Urllib.parse 模块

2、 提交方法 Method


一、Urllib.parse  模块

该模块可以完成对 url 的编解码

先看一行代码,进行编码

fron urllib import parse

u-parse.urlencode ("http: //www.magedu.com/python')

运行结果如下

Traceback (most recent call last):File "C: \Python\Python35\1ib\urllib\parse.py", line 780, in urlencode

raise TypeError

TypeError

During handling of the above exception,another exception occurred:

Traceback (most recent call last) :

File "C: /Users/Administrator/PycharmProjects/classbase/test3.py",line 4,in u-parse.urlencode ('http: //www.magedu.com/python')

可以设置多种信息

修改字符串

from urllib import parse

}-p

'id': 1,'name': 'tom}url-http: //www.magedu.com/python?id=|sname=tou-parse.urlencode (d)print (u)

转化成 URL 形式,URL  编码即使来编码这些代码的

即得到此代码

Urlencode 函数第一参数要求是一个字典或者是二次元组序列

from urllib import parse

u=parse.urlencode ({

'url': 'http: //www.magedu.com/python','p_url':"http://www.magedu.com/python?id-18name-张三',})print (u)

运行结果如下P_url=http%3A%2F%2Fwww.magedu.com%2Fpython%3Fid%301%26name%30%E5%BC%A8%E4%B8%89&url=http%3A%2F%2Fwww.nagedu.comx2Fpython

从运行结果来看,冒号、斜杠、&、等号、问号等字符    全部被编码了,%实际是单字节十六进制表示的值。一般来说,url  中的地址部分,一般不需要使用中文路劲,但是参数部分,不管是 GET 还是 POST 方法,提交的数据中可以有斜杠、,这样这些字符表示问号等符号,而不是元字符。为了安全,一般会将一部分数据做URL 处理,即不会有太大的歧义。后来也可作代码,也可传送中文,一般按照字符集的 encoding  要求转变为十六进制字符串前加百分号即可。


二、提交方法  Method

最常用的 HTTPS  交互数据的方法是  GET、POST

GET:数据是通过 URL 传递的,也就是说数据是在 HTTP 报文中的 Leader  部分

POST:数据是放在 HTTP 报文中的 body 部分所提交

数据都是键值对形式,多个参数使用&符号链接

GET  方法

连接、必应、搜索引擎官网,获取第一个搜索的

URL .http://cn.bing.com/search?q=  马哥教育

需求

请写程序完成对关键词 bing  的搜索,将返回结果保存在一个网页上

二进制与编码无关

POST 方法

http://httpbin.org/测试网站

from urllib.request import Request,urlopenfrom urllib.parse import urlencodeimport simplejson

request=Request ('http: //httpbin.org/post')request.add_header(

'User-agent',"Mozilla/5. 8 (Windows NT 6. 1) Applewebkit/537.36 (KHTML,like Gecko) Chrome/55.0.2883.75

Safar1/537. 36")

data - urlencode({'name':'张三,@-/&*','age':'6'})

访问网站作为测点

相关文章
|
数据采集 监控 Python
Python爬虫异常处理:自动跳过无效URL
Python爬虫异常处理:自动跳过无效URL
Python爬虫异常处理:自动跳过无效URL
|
数据采集 存储 NoSQL
分布式爬虫去重:Python + Redis实现高效URL去重
分布式爬虫去重:Python + Redis实现高效URL去重
|
API Kotlin
动态URL构建与HTTP请求的Kotlin实现
动态URL构建与HTTP请求的Kotlin实现
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
5062 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
1364 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
1227 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
存储 Python
【免费分享编程笔记】Python学习笔记(二)
【免费分享编程笔记】Python学习笔记(二)
262 1
【免费分享编程笔记】Python学习笔记(二)
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
340 1
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
788 1
|
消息中间件 数据采集 数据库
小说爬虫-03 爬取章节的详细内容并保存 将章节URL推送至RabbitMQ Scrapy消费MQ 对数据进行爬取后写入SQLite
小说爬虫-03 爬取章节的详细内容并保存 将章节URL推送至RabbitMQ Scrapy消费MQ 对数据进行爬取后写入SQLite
435 1

热门文章

最新文章

推荐镜像

更多