login_info.txt: youxiang_99@163.com,XXXX youxiang_100@163.com,XXXX main.py: #注意:编码格式 #算法: (1)定义多个方法,分别执行不同的操作 (2)拼接一个长的字符串,方法和参数用逗号(,)隔开,每个方法之间用回车键“\n”隔开 (3)将长字符串切割成这样的格式“方法名,参数”,strip().split("\n") (4)用split(",")判断参数长度,例如“sleep,5”参数长度…
觉得代码啰嗦的可以把logging日志删掉,但是工程中时刻要记得写日志 import pymysql import logging import sys # 加入日志 #获取logger实例 logger = logging.getLogger("baseSpider") # 指定输出格式 formatter = logging.Formatter('%(asctime)s\ %(levelname)-8s:%(message)s') # 文件日志 file_handler = log…
自动化发送163邮件 方法一: import time import datetime from selenium import webdriver from selenium.webdriver.support.wait import WebDriverWait # 等待页面加载某些元素 from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by impor…
开始在没有进入iframe时,用任何方法定位163/126邮箱登录页面的元素都不可能定位到,eclipse工作台会显示Unable to locate element:…… 这种情况我遇到了两种原因: 解决方案一: 因为126/163邮箱是在iframe中又嵌套了一个页面,所以首先需要先进入到iframe,代码如下: //启动火狐浏览器 WebDriver driver = new FirefoxDriver(); driver.get("http://mail.163.com/");…
(最近学的都是很基础的接口测试,都是基于UI界面可见的接口,就是发请求,接收响应,分析返回的结果,校验,对共通模块进行封装,仅此而已,其实做自动化的思路基本都是如此,UI也是.) 现在开始用httpClient比较规范的开始一个获取公司list的案例(必须要先登录).先导入httpclient的包就不说了,网上很多. 注意:必须要设置 User-Agent  和   Referer  ,否则会报错. * 思路: * 可能需要处理的问题: * (1)登录状态如何保持 * (2)登录后页面重定向问题…
foxmail收取163企业邮箱设置,不能直接用foxmail默认的配置,否则一直提示帐号密码错误,收件.发件服务器配置需要用imap.ym.163.com,smtp.ym.163.com三级域名,帐号密码是可以在163企业邮箱网站上登录的帐号密码就可以了. 收件.发件服务器配置需要用imap.ym.163.com,smtp.ym.163.com,如下图所示: http://www.foxmail.com/ --------------------------------- foxmail收取1…
一.特殊操作处理 1. 下拉选择框操作 1.1 如何操作下拉选择框 实现方式一 思路:先定位到要操作的option元素,然后执行点击操作 driver.find_element_by_css_selector("[value='xxx']").click() 1.2 Select类 说明:Select类是Selenium为操作select标签特殊封装的 实例化对象: select = Select(element) element: <select>标签对应的元素,通过元素…
linux查看ssh用户登录日志与操作日志 2013-11-01转载   ssh用户登录日志 linux下登录日志在下面的目录里:  代码如下 复制代码 cd /var/log 查看ssh用户的登录日志:  代码如下 复制代码 less secure 1. 日志简介 日志对于安全来说,非常重要,他记录了系统每天发生的各种各样的事情,你可以通过他来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹.日志主要的功能有:审计和监测.他还可以实时的监测系统状态,监测和追踪侵入者等等. 在Linux系统中…
foxmail创建163公司企业邮箱的时候会出现ERR Unable to log on 解决办法:把pop.qiye.163.com更改为pop.ym.163.com,瞬间创建成功....也许是网易那边服务地址已经更改而腾讯这边没有链接到?反正问题已经解决--本文使用的是最新的Foxmail7.2…
virtual_server *.*.*.* 80 { delay_loop 6 lb_algo wrr lb_kind DR persistence_timeout 120 protocol TCP ===================== 把persistence_timeout 120注释掉了:应用通过IP访问,可以登录,登录后菜单操作正常:通过域名访问,页面可以打开,但登录后一操作菜单就退出了: 经过检查是persistence_timeout被注释掉了:打开后,重启keepalive…
2019-01-07 转自  https://www.cnblogs.com/kevingrace/p/7373146.html centos 7 查看所有登录用户的操作历史 在Linux系统的环境下,不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录.可是假如一台服务器多人登陆,一天因为某人误操作了删除 了重要的数据.这时候通过查看历史记录(命令:history)是没有什么意义了(因为history只针对登录用户下执行有效,即使root用户也…
在linux系统的环境下,不管是root用户还是其它的用户只有登陆系统后用进入操作我们都可以通过命令history来查看历史记录,可是假如一台服务器多人登陆,一天因为某人误操作了删除了重要的数据.这时候通过查看历史记录(命令:history)是没有什么意义了(因为history只针对登录用户下执行有效,即使root用户也无法得到其它用户histotry历史).那有没有什么办法实现通过记录登陆后的IP地址和某用户名所操作的历史记录呢?答案:有的. 通过在/etc/profile里面加入以下代码就可…
webdriver高级应用(2) - 滚动条操作 #-*- coding:utf-8 -*- from selenium import webdriver import unittest import traceback import time class TestDemo(unittest.TestCase): def setUp(self): #启动chrome浏览器 self.driver = webdriver.Chrome(executable_path="C:\geckodriver…
(自动化实现验证码登录,这里内容是入坑后,整合了几个文档的内容)|以下模块是使用时需要用到的首先:安装pillow库,它的作用是对图片进行简单的处理,在pytharm中使用pip install pillow指令即可安装 如果出现超时报错可以用下面指令进行安装 pip --default-timeout=100 install -U pillow 下载tesseract图片识别文字模块 tesseract下载地址:https://digi.bib.uni-mannheim.de/tesserac…
如果想从头学起selenium,可以去看看这个系列的文章哦! https://www.cnblogs.com/miki-peng/category/1942527.html 前言 ​ 本文主要介绍selenium控制浏览器一些常用属性和方法,包括控制窗口大小.页面前进后退.页面刷新.打开或关闭标签页.滚动条等等 设置浏览器大小 import time from selenium import webdriver # 浏览器实例化 driver = webdriver.Chrome() # 把浏览…
前言:众所周知Linux是一个可以同时让多个用户登录的操作系统,每个用户的操作都影响着Linux运行,除了要做好安全工作以外,防止人为恶意损坏也是很关键的,比如有人恶意执行危险命令,要查找就得记录所有用户名,登录用户,用户的IP地址,执行时间,执行的命令就很重要.分享一个脚本,可以记录所有用户使用过的操作命令外,还能记录登录的Key的用户,登录IP,时间等. user_ip=`who -u am i 2>/dev/null | awk '{print $NF}'| sed -e 's/[()]/…
经过前几节,我们已经解决数据库,模型,DTO,控制器和注入等问题.那么再来看一下登录逻辑.这里算是前面几节的一个初次试水. 首先我们数据库已经有的相应的数据. 模型和DTO已经建好,所以我们直接在服务层添加Login方法就可以了. 在展现层添加Account控制器,注入IUserService接口,调用Login方法. 然后添加视图页面. 运行一下,看一下结果. 除了页面比较漂亮(哈哈),这些本来都没有什么好说的,直接上图, 这里值得注意的是,我们在创建下面的方法,在调用接口的的时候会报一个错误…
ECSHOP后台登陆后一段时间不操作就超时的解决方法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2012-05-27   客户生意比较好,因此比较忙,常常不在电脑前,经常打开后台长时间不操作,等回到电脑前操作时,每次都超时,需要从新登陆,因此,客户希望后台的登录时间尽量长些,解决这个问题主要是要在”,可尽量大些,比如“”等等!…
对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码代码如下: --演示环境  [root@SZDB ~]# more /etc/issue  CentOS release 5.9 (Final)  Kernel \r on an \m…
JQuery学习之操作类数组的工具方法 在很多时候,JQuery的$()函数都返回一个类似数据的JQuery对象,例如$('div')将返回div里面的所有div元素包装的JQuery对象.在这中情况下,JQuery提供了几个常用的属性和方法来操作JQuery对象. length:该属性返回JQuery里包含的DOM元素的个数. context:该属性返回获取该JQuery对象传入context参数 JQuery:该属性返回JQuery的版本 each(fn(index)):该方法是是一个迭代器…
不管何时何地,只要我们编程时遇到了跟时间有关的问题,都要想到 datetime 和 time 标准库模块,今天我们就用它内部的方法,详解python操作日期和时间的方法.1.将字符串的时间转换为时间戳 方法:a = "2013-10-10 23:40:00"#将其转换为时间数组import timetimeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")#转换为时间戳:timeStamp = int(time.mktime(…
这篇文章主要介绍了MongoDB查询操作限制返回字段的方法,需要的朋友可以参考下   映射(projection )声明用来限制所有查询匹配文档的返回字段.projection以文档的形式列举结果集中要包含或者排除的字段.可以指定要包含的字段(例如: {field:1})或者指定要排除的字段(例如:{field:0}).默认_id是包含在结果集合中的,要从结果集中排除_id字段,需要在 projection中指定排除_id字段({_id:0}).除了_id字段,不能在一个projection中联…
$("#父窗口元素ID",window.parent.document); 对应javascript版本为window.parent.document.getElementByIdx_x("父窗口元素ID"): 取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document); 类似的,取其它窗口的方法大同小异$(se…
DEDE后台登录和前台验证码不显示的解决方法,网络上现在有好几种方法,某些时候还是有用的.说说自己今天遇到的一个情况,跟其他不一样的原因和解决方法:  方法一 1.用ftp把网站根目录下的DATA文件夹里的\safe\inc_safe_config.php这个文件下载到本地.2.用记事本打开这个文件,找到: $safe_gdopen = ’1,2,3,4,5,6′;这句代码, 这个就是系统哪些地方开启验证码.与[验证码安全设置]界面是一对一的关系把里面的“6”删除了,就可以了. 个人点评:是取消…
php对二维数组进行相关操作(排序.转换.去空白等) 投稿:lijiao 字体:[增加 减小] 类型:转载 时间:2015-11-04   这篇文章主要介绍了php对二维数组进行相关操作,包括php对二维数组排序.转换.去空白,以及去重复值等,感兴趣的小伙伴们可以参考一下   技巧提示: ? 1 2 3 4 5 6 7 8 9 array_keys($array) //返回所有键名    array_values($array) //返回所有键值     $result=array_revers…
问题描述:sqlite3数据放置在某一台电脑的某个共享文件夹下,操作数据库的应用程序安装在同一局域网下的很多台电脑上,由于存在多人同时使用该应用程序,所以存在多人同时操作数据库的情况.经过测试发现,最常见的情况是当两人或者多人往数据库中写入数据时,只有其中一个写入成功,其他数据都写入失败. 解决方案分析: 由于本人编写程序未MFC应用程序,所以尝试使用windows互斥量mutex,具体的使用方法如下: bool CMFCApplication2Dlg::Lock() { m_pMutex =…
目前我所知道的在Linux下操作GPIO有两种方法: 1.编写驱动,这当然要熟悉Linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据ioctl命令进行GPIO寄存器的读写,并把结果回送到应用层.这里提供一点程序片断供大家参考: int  init_module(void){ printk(KERN_ALERT "ioctl load.\r\n"); register_chrdev(254,"ioreg"…
.net(C#)操作文件的几种方法汇总 System.IO命名空间下类的用法:在System.IO名称空间中包含了用于文件输入输出的主要类.File:实用类,提供许多静态方法,用于移动.复制和删除文件.Directory:实用类,提供许多静态方法,用于移动.复制和删除目录.Path:实用类,用于处理路径名称.FileInfo:表示磁盘上的物理文件,具有可以处理此文件的方法.要完成对文件的读取和写入工作,就必须创建Stream对象.DirectoryInfo:表示磁盘上的物理目录,具有可以处理此目…
目前我所知道的在linux下操作GPIO有两种方法: 1.  编写驱动,这当然要熟悉linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据ioctl命令进行GPIO寄存器的读写,并把结果回送到应用层.这里提供一点程序片断供大家参考: int  init_module(void){ printk(KERN_ALERT "ioctl load.\r\n"); register_chrdev(254,"ioreg&quo…
IO流----操作文件的9种方法代码实现: 1:使用字节流读写数据: 四种方式: method1:          每次读写一个字节,边读边写: /* * 复制文本文件. * * 数据源:从哪里来 * a.txt -- 读取数据 -- FileInputStream * * 目的地:到哪里去 * b.txt -- 写数据 -- FileOutputStream * * java.io.FileNotFoundException: a.txt (系统找不到指定的文件.) * *边读边写: */…