最近小爬一直思忖着如何将以前写的一些半自动化程序转为全自动化,这其中就涉及到SAP的打开和登录过程.我们都知道,SAP原生的“脚本录制和回放”功能是在用户进入到某一个SAP”用户指定系统“后才可以启用: 也就是说,从这里开始,您可以通过脚本录制,生成用户名.密码的输入和SAP登录过程的完整代码: 那么我们的重点就转到了,如何通过Python完成SAP应用程序的打开并进入特定的”用户指定系统“,比如下图中红圈所示系统: PS:由于SAP启动后选择不同的视图,界面会略有不同,下面演示的方法是在”浏览…
众所周知,如果要用Python做一些桌面WIN32应用的自动化工作,就需要用到著名的pywin32尤其是其中的win32com.client模块,pywin32的安装不能直接通过pip install方法,奉上pywin32的官方github链接:https://github.com/mhammond/pywin32/releases.选择与桌面系统版本.python版本对应的版本安装即可: 如果一切正常,在Ipython中导入该模块时不会报异常!如: In [1]: import win32c…
Linux环境搭建FTP服务器与Python实现FTP客户端的交互介绍 FTP 是File Transfer Protocol(文件传输协议)的英文简称,它基于传输层协议TCP建立,用于Internet上文件的双向传输(上传和下载).与大多数Internet服务一样,FTP也是一个客户端/服务器系统,要想完成文件传输需要FTP服务端和FTP客户端的配合. FTP协议使用了两条TCP连接,一条是命令链路,用于在FTP客户端与服务器之间传递命令:另一条是数据链路,用来上传或下载数据.FTP服务器/客…
在上一篇 python驱动SAP完成数据导出(一)中,我们提到了数据导出前,SAP布局的重要性,如何识别当前布局模式,以及如何切换到想要的布局.本篇小爬将着重讲讲数据导出的注意事项. 我们可以通过如下方式进行导出: 其中方法一与方法三并无本质差别,最终都是可以脚本录制或者快捷键(Ctrl+Shift+F7)得到,点击导出按钮后,界面[选择电子表格]如下: 但是假如用户曾经勾选过上图中的[始终使用选定的格式],那么则不会弹出上图所示窗口,直接进入如下界面: 注意一: 如果用户执行操作前没有点击[脚…
Python文件使用"wb"方式打开,写入字符串会报错,因为这种打开方式为:以二进制格式打开一个文件只用于写入.如果该文件已存在则将其覆盖.如果该文件不存在,创建新文件. 所以写入的字符类型需为二进制格式,如:f.write("hello".encode('ascii')) 写入的编码范围不为128以内,就不能使用ascii了,如:fh.write("汉字".encode('UTF-8'))…
再也不必当心我的密码了,多个SAP 客户端自动输入密码问题: 通常对于OFFICE人员来说,一天有很多的密码,OA密码,多个ERP密码,邮箱密码,代理密码等等,还经常60天过期之类,实在是焦头烂额. ​解决方案: 效果图: 在多个SAP client间类似,记住密码方式自动输入密码,一键登录SAP 如下图GIF所示,是不是很方便. p.s 下一步如果有类似"微信扫一扫登录"SAP客户端是不是更好? 这是如何做到的呢? 在你的个人 电脑上安装后,登录密码的时候,这个脚本会自动记录你的系统…
Modbus协议是由Modicon公司(现在的施耐德电气Schneider Electric)推出,主要建立在物理串口.以太网TCP/IP层之上,目前已经成为工业领域通信协议的业界标准,广泛应用在工业电子设备之间的互联.Modbus Poll和Modbus Slave是两款非常流行的Modbus设备仿真软件,支持Modbus RTU/ASCII和Modbus TCP/IP协议 ,经常用于测试和调试Modbus设备,观察Modbus通信过程中的各种报文.当用于支持Modbus RTU/ASCII协…
 SAP客户端 测试机.开发机.生产机     客户端(即Client),是SAP组织架构里最高层的组织单元,所有数据,包括静态数据(科目.客户.供应商.物料.资产等).业务数据(采购订单.销售订单.生产订单.维修订单等)都会归属到各个Client下.有些配置是跨Client的,所以能在各个Client中共享.同一个账号在不同Client间权限不一样,这跟权限设置有关系.SAP系统刚安装好之后只有默认的3个客户端(也叫client),即000,001,066,其中000是模板,可根据配置复制客户…
安装python的redis客户端库 本人系统已装python2.7 利用cmd命令行: 1.cmd-->python -->>>进入python命令下 >>>from urllib import urlopen >>>data = urlopen('http://peak.telecommunity.com/dist/ez_setup.py') >>>open('ez_setup.py','wb').write(data.re…
建一个服务端类ChatServer,用于设置端口接收连接 package com.swift; import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class ChatServer { public static void main(String[] args) { try { ServerSocket ss = new ServerSocket(8888); for (…