运维python拓展(一)requests使用

介绍

python的requests模块是python一个强大的第三方HTTP请求库,简单易用

安装: pip install requests

import requests

url=‘http://new.nginxs.net/ip.php‘

requet使用http各种方法

s=requests.get(url)
s=requests.post(url)
s=requests.delete(url)
s=requests.options(url)

requests模块请求传参

net_para =
{‘localdns‘:‘8.8.8.8‘,‘ip‘:‘192.168.1.2‘}  
#这里是一个字典
requests.post(url,data=net_para)

定制header信息

header={"User-Agent":"Mozilla/5.0(X11;Ubuntu;Linuxx86_64;rv:39.0)Gecko/20100101Firefox/39.0"}   #这里也是一个字典
s=requests.get(url,headers=headers)

添加cookies

cookies={‘from-my‘:
‘browser‘}
requests.get(url,cookies=cook)

添加超时时间

s
=
requests.get(url,
 timeout=0.001
)

添加代理

proxies={"http":"http://109.226.237.185:80"} #这里同样是字典,可以写多个类型代理例如https,socket4,socket5等等
proxies = {     "http": "http://user:[email protected]:3128/",
"https": "http://10.10.1.10:1080",  }
s=requests.get(url,proxies=proxies)

用户验证

response = requests.get(url,auth=(‘dan‘,‘h0tdish‘))

请求结果信息获取

print s.content         #请求返回文本同text
print s.headers         #http头信息
print s.apparent_encoding  #属性编码
print s.cookies              #获取cookies
print s.elapsed              #相应时间
>>> print s.is_permanent_redirect #是否永久跳转
False
时间: 2024-10-03 00:24:52

运维python拓展(一)requests使用的相关文章

运维python拓展(一) urllib2使用

urllib2是python自带的模块,有简单请求方法,也有复杂的http验证,http代理方法,今天就介绍几个基本的http请求方法 urllib2.urlopen urllib2.urlopen(url,data=None,timeout=1,cafile=None,capath=None,cadefault=False,context=None) 下面是urllib2发起http请求,获取httpcode In [1]: import urllib2 In [2]: url = 'http

运维python

作为一名合格的运维你会慢慢发现不掌握一些开发的知识,慢慢的会进入一个瓶颈期.因为大多数时候都在做一些重复事情或者寻找新的工具来解放你现在重复事情. 俗话说的好,自己动手丰衣足食,我决定自己学一下python解决一下我现在一些重复无意义的事情. 在读完简明的python教程以后决定写一些例子来练习: 运维python进行(一) nmap扫描端口 更新中...

自动化运维Python系列(一)之基础篇

Python介绍 Python是由创始人吉多·范罗苏姆(Guido van Rossum)在1989年圣诞节假期期间,为了打发时间,构思出来的一个新的脚本解释器.由于Guido在开发Python语言过程中,借鉴了很多ABC语言特性,所有后来包括Guido自己也那么认为,Python语言的前身就是ABC语言. Python是一门面向对象的.动态解释型强定义语言:Python崇尚简洁.优美.清晰,是一门优秀的被广泛使用的语言. 在2015年以前,最流行的Python版本还是2.4,但是由于Pytho

运维python进行(一) nmap扫描端口

介绍 python-nmap是基于系统nmap命令的一个端口扫描工具,使用简单方便. 最近为了加强服务器安全性和监管,需要每天把公司服务器开放端口扫描记录,一旦出现增加减少能发现. 之前使用shell写过一个https://github.com/bashhu/monitor-shell/blob/master/python-script/scan_port.sh 最近打算完善一下我们的运维平台,重新编写了脚本,方便平台的调用 https://github.com/bashhu/monitor-s

自动化运维Python系列之ForeignKey、relationship联表查询

一对多和多对多 数据库表结构设计是程序项目开发前的重要环节,后期数据库操作都是围绕着这个已经设计好的表结构进行,如果表结构设计有问题,整个程序项目就有存在需要整个推翻重构的风险... 数据库表结构除了简单的单表操作以外,还有一对多.多对多等. 一对多 基于SQLAlchemy我们可以先创建如下结构的2张表,然后来看看具体怎样通过外键ForeignKey或者relationship联表操作 创建表 from sqlalchemy.ext.declarative import declarative

自动化运维Python系列(五)之常用模块

模块 用一坨代码实现了某个功能的代码集合 模块分为三种 · 自定义模块 · 第三方模块 · 内置模块 1)自定义模块 自己编写并存在在某个路径下的python程序,实现了某个功能,可以被其他程序调用 2)第三方模块 网络上下载并能兼容当前Python版本的第三方程序模块,比如支持HTTP测试的requests库 3)内置模块 C:\Python3.5\Lib目录下的py文件大部分都是Python的内置模块,如sys.os.time等 导入模块 import module from module.

自动化运维Python系列之进程、线程、协程

进程 线程 协程 1)进程是具有一定独立功能的的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位 2)线程是进程的一个实体,是CPU调度和分派的基本单位 3)协程是程序自身产生的一种线程复用机制,作用是让一个线程重复利用,减少系统资源开销,提高程序效率 由于进程.线程都是操作系统的基本概念,比较抽象,我们可以将CPU看作是一个时刻在运行中的大型工厂,车间就是工厂里具有独立工作能力的程序进程,每个车间里工作的机器人就是线程: 系统工作模式: 同一时间工厂只能为一个车间供电,

运维python进行(二) 时间日期的格式化

因为经常会写一些定时任务和报表,经常需要获取昨天日期,上个月的天数,或者今天周几,如果有python模块肯定方便不少,今天就介绍两个"datetime","calendar" datetime模块介绍 如何获取当前的年,月,日,周.格式化输出时间 官方文档传送门 In [25]: import datetime In [26]: now=datetime.datetime.now()      #now是获取当前时间的方法 In [27]: print now   

自动化运维Python系列(七)之Socket编程

了解知识点TCP\IP 要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,定义了主机如何连入因特网及数据如何再它们之间传输的标准, 从字面意思来看TCP/IP是TCP和IP协议的合称,但实际上TCP/IP协议是指因特网整个TCP/IP协议族.不同于ISO模型的七个分层,TCP/IP协议参考模型把所有的TCP/IP系列协议归类到四个抽象层中(数据链路层和物理