python安全攻防---爬虫基础---get和post提交数据

get提交数据1

get提交的数据就附在提交给服务器的url之后,以?开头参数之间以&隔开,例如/admin/user/123456.aspx?name=123&id=123
案例:写个脚本,在sogou自动搜索周杰伦,并将搜索页面的数据获取
程序如下:

import requestsquery = input("请输入一个你喜欢的明星:")url = f'https://www.sogou.com/web?query={query}'dict = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36','Referer':'https://www.sogou.com/web?query=zhoujielun&_asf=www.sogou.com&_ast=&w=01019900&p=40040100&ie=utf8&from=index-nologin&s_from=index&sut=3117&sst0=1621925126921&lkt=11,1621925123805,1621925126101&sugsuv=001E74F4CA65D1685D50D56F6038D197&sugtime=1621925126921'
}response = requests.get(url,headers=dict)print(response)
print(response.text)

对于dict里面的内容,我们可以在浏览器手动获得,我以Chrome浏览器为例:
F12或者右键页面,找到检查,点击
在这里插入图片描述
找到network,如果没有数据,刷新一下,随便点击左边的内容,然后找到Request Headers,就可以找到Referer和User-Agent的值了
在这里插入图片描述
对于get的提交数据,使用requests.get(url,headers=dict),url是我们爬虫的页面,url也有我们提交的数据,后面增加的headers是为了反反爬虫的。
运行结果:
在这里插入图片描述

get提交数据2

案例:爬取豆瓣数据排行榜的数据
地址:https://movie.douban.com/typerank?type_name=%E5%96%9C%E5%89%A7&type=24&interval_id=100:90&action=

在这里插入图片描述
再第二个连接中我们找到了我们需要的数据
在这里插入图片描述
观察Headers,找到url和header参数,并且可以发现是get请求
在这里插入图片描述

写出程序:

import requestsurl = 'https://movie.douban.com/j/chart/top_list'
#重新封装参数
param = {'type': '24','interval_id': '100:90','action': '','start': 0,'limit': 20,
}headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36',
}
resp = requests.get(url=url,params=param,headers=headers)print(resp.json())
resp.close()

这里可以在使用get方法时使用paams指定get的参数。

在这里插入图片描述

post提交数据

post提交数据的方法则是直接将数据放在http的body部分

response = requests.post(url=url,data=data)

data是我们需要提交的数据,字典形式
其他和post一样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379859.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python安全攻防---爬虫基础--re解析数据

0x01 re基础 使用re模块,必须先导入re模块 import refindall():匹配所有符合正则的内容,返回的是一个列表 import restr "我的电话:10086,女朋友电话:11011" list re.findall(\d,str) print…

python安全攻防---爬虫基础---BeautifulSoup解析

0x01 基础 使用bs4首先要安装,安装后导入 import bs4bs对象有两个方法,一个是find,另一个是find_all find(标签名,属性值):只返回一个,返回也是bs对象,可以继续用find…

Java——Socket通信原理

* Socket通信原理图解* A:Socket(中文翻译为:电源插座)套接字概述* 网络上具有唯一标识的IP地址和端口号组合在一起才能构成唯一能识别的标识套接字* 通信的两端都有Socket(两端都是电源插座,中间是啥?不就是电线啦,电…

python安全攻防---scapy基础---计算机网络各层协议

网络层次划分 比较常用的是TCP/IP五层协议。 0x01应用层 应用层是网络应用程序以及它们的应用层协议存留的地方。应用层协议和应用程序直接挂钩 DHCP(Dynamic Host Configuration Protocol)动态主机分配协议,使用 UDP 协议工作,主要有两个用途&#xf…

Java——UPD输出及优化再优化

* UPD传输不区分客户端跟服务端,* 这里用Send和Receive这两个方法决定谁发谁收 * 1.发送Send * 创建DatagramSocket,随机端口号* 创建DatagramPacket,指定数据、长度、地址、端口* 创建DatagramSocket发送DatagramPacket* 关闭DatagramSocket 代码如下&…

python安全攻防---信息收集---ICMP主机探测 以及optionparser的使用

0x01 基础概念 ICMP(Internet control Message Protocal)Internet报文协议,是TCP/IP的一种子协议,属于网络层协议,其目的是用于在IP主机、路由器之间传递控制信息 0x02 程序 程序 # -*- coding:utf-8 -*- from sca…

第一章 基础知识---1.4Crack小实验--复现

0x01 程序及其编译环境 程序如下&#xff0c;功能&#xff1a;我们必须输入正确的密码1234567才能得到密码验证的确认&#xff0c;跳出循环。否则程序提示密码错误再次输入。 #include <stdio.h>#define PASSWORD "1234567"int verify_password(char* passwo…

.net中调用exchange服务器发邮件

普通的邮件, 用System.Net.Mail 类 或 System.Web.Mail 类 处理即可, 但是Exchange Server 环境下, 这两个类起不了作用-------至少目前我看到的情况如此. 整个过程如下: 1. 先添加COM 引用 "Microsoft CDO for Windows 2000 Library" .2. 发送邮件的代码: CDO.Messa…

端口复用和重映射--STM32F103

什么是端口复用&#xff1f; STM32中有很多内置外设&#xff0c;这些外设的引脚都是与GPIO复用的&#xff0c;什么时候复用呢&#xff1f;就是当一个GPIO作为内置外设引脚使用时&#xff0c;就叫做复用。比如串口1的发送接收引脚是PA9&#xff0c;PA10&#xff0c;当PA9&#…

[转]Ubuntu远程桌面登陆

原文地址&#xff1a;http://www.cnblogs.com/xdzone/archive/2011/03/10/1979644.html 1.xp下默认的远程桌面协议是rdp&#xff0c;默认端口3389&#xff0c;而ubuntu用的时vnc&#xff1a;默认端口5900 2.首先被访问的主机&#xff08;windows/linux&#xff09;都要设置为允…

NVIC中断管理---STM32

NVIC&#xff1a;嵌套向量中断控制器 在了解中断之前&#xff0c;我们先了解抢占优先级和响应优先级 抢占优先级和响应优先级 抢占优先级决定能不能打断&#xff0c;高优先级的抢占可以中断低优先级的抢占响应优先级在抢占优先级相同时&#xff0c;高响应优先级先执行&#x…

外部中断---STM32F1

外部中断概述 STM32的中断控制器支持19个外部中断/事件请求&#xff1a; 线0-15&#xff1a;对应外部IO口的输入中断线16&#xff1a;连接到PVD输出线17&#xff1a;连接到RTC闹钟事件线18&#xff1a;连接到USB唤醒事件 STM32每个IO口都有可以作为外部中断输入&#xff0c;…

转:点9图

关于”点九” 转&#xff1a;http://mux.baidu.com/?p1506“点九”是andriod平台的应用软件开发里的一种特殊的图片形式&#xff0c;文件扩展名为&#xff1a;.9.png 智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向…

串口通信的基本原理----STM32

串口通信基本原理 1. 处理器与外部设置通信的基本方式 并行通信&#xff1a;数据各个位同时传输串行通信&#xff1a;数据按位顺序传输 在串行通信中&#xff0c;按照数据的传输方向&#xff0c;又分为&#xff1a; 单工&#xff1a;数据传输只支持在一个方向传输半双工&am…

Spring MVC+Ant+Tomcat+Eclipse最简单的demo

第一步是Java的Web环境搭建&#xff0c;下载Eclipse&#xff08;或者更好的但收费的IDE-IntelliJ Idea&#xff0c;和Resharper一家公司出的&#xff09;&#xff0c;下载Tomcat&#xff0c;下载JDK&#xff0c;下载Spring&#xff0c;注意安装Tomcat的时候配置一下管理员账号和…

MySQL的环境变量配置详细步骤

1.下载MySQL 例如下载&#xff1a;mysql-installer-community-5.5.60.1 我以这个版本为例 2.右击->我的电脑->属性 3. 4.找到在 系统变量 中找到 Path 5.找MySql的bin目录&#xff08;每个人的电脑上这个文件的位置应该是差不多的&#xff0c;找到之后复制下来&#x…

串口发送通信---UART发送---STM32F4实现

串口发送程序配置过程&#xff08;HAL库&#xff09; 初始化串口相关参数&#xff0c;使能串口 HAL_StatusTypeDef HAL_UART_Init(UART_HandleTypeDef *huart)该函数的参数是串口的基址&#xff0c;在stm32f429xx.h文件中&#xff0c;定义了8个UART_HandleTypeDef的值&#x…

开源软件 许可证密钥_自由和开源软件-1中的重要许可证

开源软件 许可证密钥Its important to take note that there are no good or bad licenses and that no license is superior to another. Anybody can make an open-source license that suits their extravagant, which is the explanation that there are such huge numbers…

串口接收中断配置过程---STM32F4--HAL

串口接收中断程序配置过程&#xff08;HAL&#xff09; 初始化相关参数&#xff0c;使能串口&#xff1a; HAL_UART_Init();该函数的参数是串口的基址&#xff0c;在stm32f429xx.h文件中&#xff0c;定义了8个UART_HandleTypeDef的值&#xff0c;分别是USART1、USART2、USART…

定时器--STM32f4--HAL

基本概念 STM32中有三种定时器&#xff0c;高级定时器&#xff0c;通用定时器&#xff0c;基本定时器&#xff0c;具体如下图&#xff1a; 发生如下事件将产生中断/DMA 更新&#xff1a;计数器向上溢出/向下溢出&#xff0c;计数器初始化触发事件&#xff1a;计数器启动、停…