模拟开户接口,使用python脚本实现批量用户开通
1、目的
通过模拟接口方法,实现批量用户开通
2、分析
A、接口含body和head部分,其中body中的某些变量为必填字段,包含用户的信息。
B、用户信息清单可以整理成ott_after_check_device文件。
C、将ott_after_check_device文件转换成列表数据类型,将其用户信息对应替换到body.xml文件中。
3、脚本实现
#!/usr/bin/env python
# -*- coding: utf-8 -*- import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder def get_txt_after_check_device():
ott_after_check_device = '.\\ott_after_check_device.txt'
f = open(ott_after_check_device)
lines = f.readlines()
all_list_device = []
for line in lines:
line = line.replace("\n", '')
list_device = line.split(',')
all_list_device.append(list_device)
return all_list_device def ott_boss(list_device):
sleep_time = 0.001
# print len(list_device)
for i in range(len(list_device)):
print u'新开户数 :', i + 1
time.sleep(sleep_time)
acc_num = list_device[i][0]
stb_id = list_device[i][1]
print 'STBID : ', stb_id
account = list_device[i][2]
url = 'http://10.2.214.133:6600/oss/rest/mango/bossManagement/syncOrder'
mul = MultipartEncoder(
fields={
'xmlhead': '<?xml version="1.0" encoding="UTF-8"?> <InterBOSS>'
'<Version>0100</Version>'
'<TestFlag>0</TestFlag>'
'<BIPType>'
'<BIPCode>IPTVB412</BIPCode>'
'<ActivityCode>T2101057</ActivityCode>'
'<ActionCode>0</ActionCode>'
'</BIPType>'
'<RoutingInfo>'
'<OrigDomain>BOSS</OrigDomain>'
'<RouteType>00</RouteType>'
'<Routing>'
'<HomeDomain>OTT</HomeDomain>'
'<RouteValue>210</RouteValue>'
'</Routing>'
'</RoutingInfo>'
'<TransInfo>'
'<SessionID>2018092517323481311686</SessionID>'
'<TransIDO>2018092517323416388122</TransIDO>'
'<TransIDOTime>20180211173234</TransIDOTime>'
'</TransInfo> </InterBOSS>',
'xmlbody': '<?xml version="1.0" encoding="UTF-8"?> <InterBOSS> <SvcCont><![CDATA[<?xml '
'version="1.0" encoding="UTF-8"?> <OrdSynReq>'
'<PkgSeq>73120180111000007</PkgSeq>'
'<RecNum>1</RecNum>'
'<UD1>'
'<IDType>01</IDType>'
'<IDV>%s</IDV>'
'<Brand>09</Brand>'
'<Opr>06</Opr>'
'<OprT>20180925171922</OprT>'
'<BizType>52</BizType>'
'<Seq>8121</Seq>'
'<BroadbandID>738815023717</BroadbandID>'
'<ZipCode></ZipCode>'
'<Address></Address>'
'<UserName></UserName>'
'<UserSex></UserSex>'
'<IDCardType></IDCardType>'
'<IDCardNum></IDCardNum>'
'<AreaCode>K381</AreaCode>'
'<GroupID></GroupID>'
'<POCont>'
'<ActType>1</ActType>'
'<StbID>%s</StbID>'
'<Account>%s</Account>'
'<Password>111111</Password>'
'<ChrgType>2</ChrgType>'
'<EffetiTime>20180925171922</EffetiTime>'
'<Channel>08</Channel>'
'<SPID>mango</SPID>'
'<BizCode>defaultBasicProduct</BizCode>'
'<BizKind>01</BizKind>'
'</POCont>'
'</UD1> </OrdSynReq> '
']]></SvcCont> </InterBOSS>' % (acc_num, stb_id, account)
}
)
header = {'Content-Type': mul.content_type}
body = mul
response = requests.post(url, data=body, headers=header)
print response.content
print response.status_code if __name__ == '__main__':
ott_boss(get_txt_after_check_device())
模拟开户接口,使用python脚本实现批量用户开通的更多相关文章
- 模拟开户接口,使用shell脚本实现批量用户开通
1.目的 通过模拟接口方法,实现批量用户开通 2.分析 A.接口含body和head部分,其中body中的某些变量为必填字段,包含用户的信息,接口可整理成body.xml.head.xml文件. B. ...
- shell脚本和python脚本实现批量ping IP测试
先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 ...
- Shell学习笔记之shell脚本和python脚本实现批量ping IP测试
0x00 将IP列表放到txt文件内 先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.1 ...
- zabbix3.4用Python脚本Excel批量导入主机
1.安装xlrd读取Excel文件 1.1. 下载setuptools-38.2.4.zip,上传至zabbix服务器解压安装,下载地址:https://pypi.python.org/package ...
- RobotFramework 模拟http接口登录自动化脚本
RobotFramework 模拟自动化登录脚本思路: 先获取页面cookie值,然后根据cookie值加上请求体提交登录: 一.获取cookie: 以下脚本获取cookie值,并把改脚本封装为关键字 ...
- Python脚本:批量将.doc文件转化为.docx文件
将.doc转换为.docx文件有几种常用的方法: Microsoft Word 和 WPS 自带.doc转换.docx功能,但只能一个文件一个文件转换,批量转换要会员 在线网页 Office-Conv ...
- python脚本-excel批量转换为csv文件
pandas和SQL数据分析实战视频教程 https://study.163.com/course/courseMain.htm?courseId=1006383008&share=2& ...
- 使用Python脚本批量裁切栅格
对栅格的裁切,我们通常使用裁切(数据管理-栅格-栅格处理)或按掩膜提取(空间分析-提取分析)来裁切,裁切的矢量要素通常是一个要素图层或Shape文件.如果要进行批量处理,可以使用ToolBox中的批量 ...
- Python实用案例,Python脚本,Python实现批量加水印
往期回顾 Python实现自动监测Github项目并打开网页 Python实现文件自动归类 Python实现帮你选择双色球号码 Python实现每日更换"必应图片"为"桌 ...
随机推荐
- PHP使用Zend Opcache之优化加速和缓存清理总结
简介 字节码缓存不是php的新特性,有很多独立性的扩展可以实现缓存,比如PHP Cache(APC),eAccelerator,ionCube和XCache等等.但是到目前为止,这些独立的扩展并没有集 ...
- [视频]K8飞刀 一键免杀 IE神洞网马教程
[视频]K8飞刀 一键免杀 IE神洞网马教程 https://pan.baidu.com/s/16ZrTs
- Xamarin.Android SharedPreferences的使用方法
SharedPreferences的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息.其存储位置在/data/data/<包名>/shared_pref ...
- SQL 必知必会·笔记<14>更新和删除数据
1. 更新数据 基本的UPDATE语句,由三部分组成: 要更新的表 列名和它们的新值 确定要更新那些行的过滤条件 更新单列示例: UPDATE Customers SET cust_email = ' ...
- ajaxFileUpload带参数提交(亲测可用)
使用ajaxFileUpload上传文件时,有时需要带参数提交,网上有很多资料说使用data,但其实要使用data带参数是需要修改的,否则后台是获取不到的. 分析原因: ajaxFileUpload为 ...
- 西门子PLC-1200 SCL语言开发学习笔记 (一)
一.简介和背景 PLC一般使用梯形图开发,但是梯形图适合电工使用而不是程序员使用,对我们来说开发困难,门槛高,幸好PLC的开发标准还带了类pascal的高级语言,在西门子这里叫SCL语言,这对于我们程 ...
- kubernetes1.13之后的kubeadm init config
1.kubernetes1.13之后kubeadm开始GA,由于1.13的kube-proxy有bug,删除ipvs的地方总是导致kube-proxy挂掉,所以建议直接用1.13.2,这个版本解决了b ...
- fastdfs集群版搭建(一)- storage集群搭建与统一入口访问
前言 接着上篇博客:详细的最新版fastdfs单机版搭建,今天来讲讲fastdfs的集群搭建,限于篇幅,今天先搭建stoarge集群,并实现统一的http访问方式: 没看我上篇博客的小伙伴,最好先去瞅 ...
- 搭建前端监控系统(三)NodeJs服务器部署篇
===================================================================== 监控系统预览地址: DEMO地址 GIT代码仓库地址 ...
- 浅谈MemCahe
MemCahe 首先介绍下memcahce的定义:是一个分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的.需要频繁访问数据库的网站访问速度提升效果十分显著. 接下来介绍 ...