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'})

访问网站作为测点

相关文章
|
8天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
46 6
|
2月前
|
数据采集
Haskell爬虫:连接管理与HTTP请求性能
Haskell爬虫:连接管理与HTTP请求性能
|
1月前
|
数据采集 存储 数据挖掘
深入探索 Python 爬虫:高级技术与实战应用
本文介绍了Python爬虫的高级技术,涵盖并发处理、反爬虫策略(如验证码识别与模拟登录)及数据存储与处理方法。通过asyncio库实现异步爬虫,提升效率;利用tesseract和requests库应对反爬措施;借助SQLAlchemy和pandas进行数据存储与分析。实战部分展示了如何爬取电商网站的商品信息及新闻网站的文章内容。提醒读者在实际应用中需遵守法律法规。
169 66
|
14天前
|
数据采集 前端开发 算法
Python Requests 的高级使用技巧:应对复杂 HTTP 请求场景
本文介绍了如何使用 Python 的 `requests` 库应对复杂的 HTTP 请求场景,包括 Spider Trap(蜘蛛陷阱)、SESSION 访问限制和请求频率限制。通过代理、CSS 类链接数控制、多账号切换和限流算法等技术手段,提高爬虫的稳定性和效率,增强在反爬虫环境中的生存能力。文中提供了详细的代码示例,帮助读者掌握这些高级用法。
Python Requests 的高级使用技巧:应对复杂 HTTP 请求场景
|
5天前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
8天前
|
数据采集 前端开发 中间件
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第26天】Python是一种强大的编程语言,在数据抓取和网络爬虫领域应用广泛。Scrapy作为高效灵活的爬虫框架,为开发者提供了强大的工具集。本文通过实战案例,详细解析Scrapy框架的应用与技巧,并附上示例代码。文章介绍了Scrapy的基本概念、创建项目、编写简单爬虫、高级特性和技巧等内容。
30 4
|
1月前
|
数据采集 JavaScript 前端开发
JavaScript逆向爬虫——使用Python模拟执行JavaScript
JavaScript逆向爬虫——使用Python模拟执行JavaScript
|
1月前
|
JSON 缓存 API
在 Python 中使用公共类处理接口请求的响应结果
在 Python 中使用公共类处理接口请求的响应结果
28 1
|
2月前
|
JSON API 数据格式
使用Python发送包含复杂JSON结构的POST请求
使用Python发送包含复杂JSON结构的POST请求
|
2月前
|
Python
python第三方库-字符串编码工具 chardet 的使用(python3经典编程案例)
这篇文章介绍了如何使用Python的第三方库chardet来检测字符串的编码类型,包括ASCII、GBK、UTF-8和日文编码的检测示例。
103 6

热门文章

最新文章