
Python
文章平均质量分 58
主要记录自己写的python代码,以及python的各种函数和使用方法
孤风落影
网络令人头大
展开
-
python selenium模块使用出错解决,Message: ‘geckodriver’ executable needs to be in PATH
错误代码如下:selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.Windows系统解决办法如下:1、下载geckodriver.exe:下载地址:https://github.com/mozilla/geckodriver/r...原创 2018-04-25 11:51:06 · 1573 阅读 · 0 评论 -
python selenium打开新窗口,多窗口切换
# coding=utf-8from selenium import webdriverbrowser=webdriver.Firefox()browser.maximize_window() # 窗口最大化browser.get('https://www.baidu.com') # 在当前浏览器中访问百度# 新开一个窗口,通过执行js来新开一个窗口js='window....原创 2018-04-24 16:41:09 · 6445 阅读 · 0 评论 -
python+selenium如何定位页面的元素,的几种定位元素的方法。
1、什么是Selenium,为什么web测试,大家都用它?Selenium设计初衷就是为web项目的验收测试再开发。内核使用的是javaScript语言编写,几乎支持所以能运行javaScript的浏览器,支持windows\linux\macos等各种平台。Selenium 脚本是用多种受支持的编程语言中的一种编写的 —— 目前可用的有 Java、Ruby 和 Python 驱动程序。这些脚本在...转载 2018-04-25 11:47:53 · 1234 阅读 · 0 评论 -
selenium常用命令之操作页面元素及获取元素内容的事件整理
/**id <input type=”text” id=”phone” name=”phone” class=”LoginText” placeholder=”手机号” > * <button class=”LoginBtn” id=”btnLogin” value=”baidu”> 登录</button>*/WebElement byName=driver.f...转载 2018-04-25 09:09:59 · 842 阅读 · 0 评论 -
Python判断网页是否有这个元素的技巧
有时候我们使用Python打开一个网页的时候,需要让Python去判断一下打开的网页是不是我们想要打开的。我们可以使用try: except 来判断一下。实现思路:try: 打开百度 点击百度特有的css元素 print(“百度打开成功”) 关闭网页except: print(“百度打开失败”) 关闭网...原创 2018-04-26 09:26:06 · 7300 阅读 · 0 评论 -
Selenium常见元素定位方法和操作的学习介绍
这篇文章主要Selenium+Python自动测试或爬虫中的常见定位方法、鼠标操作、键盘操作介绍。一. 定位元素方法参考:http://selenium-python.readthedocs.org/locating-elements.html这里有各种策略用于定位网页中的元素(locate elements),你可以选择最适合的方案,Selenium提供了一下方法来定义一个页面中的元素:find...转载 2018-04-25 09:06:28 · 371 阅读 · 0 评论 -
Selenium+Python浏览器调用:Firefox
python -m pydoc -p 4567说明:python -m pydoc表示打开pydoc模块,pydoc是查看python文档的首选工具;-p 4567表示在4567端口上启动server然后在浏览器中访问http://localhost:4567/,此时应该可以看到python中所有的Modules按ctrl+f,输入selenium,定位到selenium文档的链...原创 2018-04-27 16:08:56 · 2189 阅读 · 0 评论 -
Python安装selenium及报错原因
想用Python + selenium 调用firefox浏览器写个登陆网页的脚本,发现selenium需要手动安装,决定写一下selenium的安装教程。环境:Windows 7Python.3.6.1教程:1.使用cmd打开Windows的终端,在终端里切换目录到Python的安装目录里:PS:如果要切换到D盘,直接在终端上打 d:就可以切换到D盘了。如果要切换...原创 2018-04-27 16:01:41 · 21332 阅读 · 2 评论 -
Selenium WebDriver-网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作
from selenium import webdriverdriver = webdriver.Ie(executable_path = "e:\\IEDriverServer") #打开浏览器driver.get("http://wenku.baidu.com") #输入网址driver.back() #向后退driver.forward() #向前进driver.refresh...转载 2019-03-27 10:11:26 · 2197 阅读 · 0 评论 -
python+selenium刷新firefox页面
#coding=utf-8# 导入selenium的webdriver包from selenium import webdriver# 将控制webdriver的Firefox赋值给driverdriver=webdriver.Firefox()# 刷新当前浏览器页面driver.refresh_page()...原创 2018-04-24 16:41:31 · 1036 阅读 · 0 评论 -
centos (linux) 安装python 3
1、查看python安装目录whereis python2、查看/usr/bin/目录下的python文件ls -al /usr/bin/python*3、安装python3相关的安装包,用于编译python3yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make -y安装完成后的截图:3.1、如果出现原创 2021-04-08 14:05:56 · 700 阅读 · 0 评论 -
python 人民币数字转大写中文
def digital_to_chinese(digital): str_digital = str(digital) chinese = {'1': '壹', '2': '贰', '3': '叁', '4': '肆', '5': '伍', '6': '陆', '7': '柒', '8': '捌', '9': '玖', '0': '零'} chinese2 = ['拾',...转载 2019-03-27 17:55:34 · 3365 阅读 · 1 评论 -
python 爬取微信好友信息,并分析微信好友信息
python登陆微信并获取信息,我使用的是itchat函数,使用前记得导入itchat1、python想要获取微信好友信息,必须用python登陆微信,以下代码可以打开微信登陆二维码,使用手机扫码登陆itchat.auto_login(True)2、第二步,获取所有微信好友的信息,并储存微信登陆信息# 获取除自己以外的好友信息,update=True字段标识储存微信登陆信息到i...原创 2019-06-21 14:53:20 · 2573 阅读 · 2 评论 -
python 编写telnet客户端(完整代码示例)
测试的设备时,需要用到telnet到设备,添加大量配置,所以才学了一下python的telnetlib库。在闲着无聊的情况下,突发想象,想做一个telnet的客户端工具,本客户端有各种字符串裁剪,不适合所有telnet服务端返回值的显示,仅供逻辑参考,源码如下:# -*- coding:utf-8 -*-import timeimport telnetlibdef telnet...原创 2019-06-20 17:34:38 · 9613 阅读 · 7 评论 -
python 识别登陆验证码图片(完整代码)
在编写自动化测试用例的时候,每次登录都需要输入验证码,后来想把让python自己识别图片里的验证码,不需要自己手动登陆,所以查了一下识别功能怎么实现,做一下笔记。首选导入一些用到的库,re、Image、pytesseract、selenium、timeimport re # 用于正则from PIL import Image # 用于打开图片和对图片处理import pytess...原创 2019-05-25 15:37:58 · 108434 阅读 · 68 评论 -
python判断IP格式是否合法
ip = ''ip_split = ip.split('.') # 以 . 为分隔符分割字符串for i in range(4): # 循环验证分割的每个字符串 try: int(ip_split[i]) # 验证是否是整数 except: print('IP格式错误0') exit() if int(ip_spl...原创 2019-05-21 17:25:07 · 4144 阅读 · 1 评论 -
tkinter 设置输入框高度、长度、高亮、颜色
1、添加一个输入框代码:# coding:utf-8from tkinter import *root = Tk()root.title("test")root.geometry("200x100")root.resizable(width=False, height=False)l = Entry(root) # 添加输入框l.pack()root.mainloop(...原创 2019-05-09 14:54:34 · 36028 阅读 · 9 评论 -
Python实现字符串与数组相互转换功能
本文实例讲述了Python实现字符串与数组相互转换功能。具体如下:字符串转数组字符串转数组使用split函数str = '1,2,3'arr = str.split(',')print a数组转字符串数组转字符串使用join函数# 方法1arr = ['a','b']str1 = ','.join(arr)print str1# 方法2arr = [1,2...原创 2018-04-25 09:12:04 · 1585 阅读 · 0 评论 -
module 'urllib' has no attribute 'request'
导入信息:import urllib.request报错信息:module 'urllib' has no attribute 'request'报错原因:百度上都说request是一个模块而不是函数,但是我发现导入方法都是一样的啊,后来发现因为脚本名称为“http”,导致查询库的时候查询失败了。解决办法:修改脚本名称为"http修改"后,问题解决。...原创 2019-05-08 10:19:57 · 3584 阅读 · 1 评论 -
python 5行代码写出http服务器
废话不多说,源码如下:from http import serverfrom http.server import SimpleHTTPRequestHandlerserver_address = ('127.0.0.1', 80)httpd = server.HTTPServer(server_address, SimpleHTTPRequestHandler)httpd.serv...原创 2019-06-21 16:09:58 · 459 阅读 · 0 评论 -
python print字体颜色 print背景颜色
# -*- coding:utf-8 -*-print("\033[1;30m 字体颜色:白色\033[0m")print("\033[1;31m 字体颜色:红色\033[0m")print("\033[1;32m 字体颜色:深黄色\033[0m")print("\033[1;33m 字体颜色:浅黄色\033[0m")print("\033[1;34m 字体颜色:蓝色\033[0m")...原创 2019-06-12 11:30:05 · 29206 阅读 · 3 评论 -
python 获取当前路径
sys.argv[0]import sysprint sys.argv[0]#获得的是当前执行脚本的位置(若在命令行执行的该命令,则为空)运行结果(在python脚本中执行的结果):F:/SEG/myResearch/myProject_2/test.pyos模块import osprint os.getcwd()#获得当前工作目录print os.path.abspath('.')#获得当...转载 2018-04-24 16:40:00 · 673 阅读 · 0 评论 -
Python 多线程开启TCP服务器
测试过程中需要设备监听大量tcp端口,然后写了一个多线程启用tcp服务器的脚本。记录一下# -*- coding: utf-8 -*-from socket import *from time import ctimeimport threadingimport randomclass tcp_threading: def __init__(self): ...原创 2019-09-26 14:43:40 · 828 阅读 · 0 评论 -
python 爬取网易云音乐评论
网易云音乐的评论里总会有大批的神评论,突发灵感想写个爬虫爬取评论,后来发现百度的方法都需要AES加密的密钥,太麻烦了,本人小白表示看不懂,在知乎上看到网易云有API接口可以直接爬取,不需要任何密钥。具体代码如下:# coding:utf-8import reimport timefrom urllib import requestclass PL: def __init_...原创 2019-08-12 16:01:36 · 409 阅读 · 0 评论 -
python 删除爬虫里无法识别的表情字符
在爬网易云评论的时候发现评论里有很多人发表情,然而python爬取表情后发现无法把表情写入文件里。从而导致异常。后来找到了两种方法判断。第一种:通过re.sub()删除评论里无法识别的字符串,re.sub有个弊端就是只有第一个表情图片错误的时候能处理,第二个就无法处理了def character(a): dk = open(r'.\评论.txt', 'w') try: ...原创 2019-08-13 14:23:31 · 1814 阅读 · 0 评论 -
python base64数据加密
base64数据加密,是一种可逆的编码格式,生成的编码是ascii格式的数据,通过encode加密,decode解密。原理:1、将所有字符转化为ASCII码。2、将ASCII码转化为8位二进制 。3、将二进制3个归成一组(不足3个在后边补0)共24位,再拆分成4组,每组6位。4、统一在6位二进制前补两个0凑足8位。5、将补0后的二进制转为十进制。6、从Base64编码表获取十进制对应的...原创 2019-08-05 14:57:36 · 1389 阅读 · 0 评论 -
BeautifulSoup报错:UserWarning: No parser was explicitly specified
完整报错如下:UserWarning: No parser was explicitly specified, so I'm using the best available HTML parser for this system ("html5lib"). This usually isn't a problem, but if you run this code on another s...原创 2019-07-09 16:48:00 · 2357 阅读 · 0 评论 -
python 生成手机号,并且验证手机号是否存在
1、该功能需要两个库,random和phone2、已移动手机号为例,首先导入需要的库,然后定义一个类,在init里定义移动手机号的前缀,self.yd里的手机号前三位都是属于移动的。# coding:utf-8import randomfrom phone import Phoneclass CellPhoneNumber: def __init__(self): ...原创 2019-06-27 16:54:48 · 2981 阅读 · 4 评论 -
python使用phone实现手机号归属地查询
1、想做一个手机号的密码本,做完之后发现文件有点大,然后就想试试能不能判断手机号是属于哪个运营商的,分别储存每个运营商的手机号2、本功能极为简单,主要使用phone模块,源码如下:# coding:utf8from phone import Phonep = Phone() c = '158****8273' # 手机号city = p.find(c)print(city...原创 2019-06-27 14:28:20 · 2930 阅读 · 0 评论 -
python 爬虫,起点完结榜前100榜单
# coding:utf-8from selenium import webdriveri = 0ph = 1driver = webdriver.Firefox()driver.get('https://www.qidian.com/rank/fin') # 要打开的网页for r in range(5): books = driver.find_elements_by_...原创 2019-03-26 15:00:10 · 1018 阅读 · 0 评论 -
python实现FTP循环上传文件
测试过程中,有时会用到FTP的数据流,或者需要使用FTP反复上传文件,所以写了一个FTP循环上传文件的python代码。代码如下:#coding=utf-8import sysimport osfrom ftplib import FTPfrom time import sleep_XFER_FILE = 'FILE'_XFER_DIR = 'DIR'class T...原创 2019-02-19 10:09:03 · 1132 阅读 · 0 评论 -
Python使用paramiko远程连接linux
import paramikohost = "192.168.180.126" # 需要远程的PCport = 22 # 远程端口user = "kylin" # 登陆的用户名pwd = "kylin" # 登陆的密码# 建立SSH连接ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko...原创 2018-04-26 09:22:00 · 452 阅读 · 0 评论 -
Python操作excel
一、安装xlrd模块到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境。二、使用介绍1、导入模块import xlrd 2、打开Excel文件读取数据data = xlrd.open_workbook('excelFile.xls') 3、使用技巧获取一个工作表 table = data.sheets(...原创 2018-04-26 09:21:14 · 222 阅读 · 0 评论 -
python 遍历数组的方法
python 遍历数组有两种方法,一种是使用for in 来遍历数组,一种是先获得数组的长度,然后根据索引号遍历数组,同时输出索引号。for in 遍历数组方法:colours = ["red","green","blue"]for colour in colours: print colourredgreenblue遍历数组方法二:colours = ["red","gree...转载 2018-04-25 09:13:26 · 6448 阅读 · 0 评论 -
Python split()函数使用方法(分割数组)
描述Python split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串语法split()方法语法:str.split(str="", num=string.count(str)).参数str — 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。num — 分割次数。返回值返回分割后的字符串列表。实例以下实例展示了split()函...转载 2018-04-25 09:12:38 · 22195 阅读 · 1 评论 -
Python终端如何输出彩色字体
实现过程: 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。 转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)。书写格式: 开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m 注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写...转载 2018-04-25 09:11:01 · 218 阅读 · 0 评论 -
python 破解wifi密码
# coding:utf-8import time # 时间import pywifi # 破解wififrom pywifi import const # 引用一些定义from asyncio.tasks import sleepclass PoJie(): def __init__(self, path): self.file = open(path,...转载 2018-04-24 16:40:32 · 4795 阅读 · 29 评论 -
python 执行结果输出为txt
name =['a1','a2','a3']f = open("F:/name.txt", "w+")f.write("name")原创 2018-04-24 16:39:28 · 25027 阅读 · 1 评论 -
python def 定义函数
在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。我们以自定义一个求绝对值的my_abs函数为例:def my_abs(x): if x >= 0: return x else: return -x...原创 2018-04-24 16:27:59 · 7734 阅读 · 0 评论 -
python:浅析python 中__name__ = ‘__main__’ 的作用
有句话经典的概括了这段代码的意义:“Make a script both importable and executable”意思就是说让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行。这句话,可能一开始听的还不是很懂。下面举例说明:先写一个模块:# module.pydef main(): print "we are in %s"%__name__if __name__...转载 2018-04-24 16:25:43 · 213 阅读 · 0 评论