Python
文章平均质量分 58
Python相关知识
xupeng1644
道阻且长,行则将至!
展开
-
linux环境切换python3版本(转载)
在linux环境下既安装了python3.5又安装了python3.7,在安装库函数的时候有时候会遇到版本不兼容问题,例如有些库函数要求当前的python环境必须是python3.6及以上版本。下面演示如何将python3.5切换成python3.7。转载 2022-12-31 22:12:53 · 1301 阅读 · 0 评论 -
Python selenium 滚动页面以及滚动至元素可见(转载)
在自动化操作中,如果web页面过长,而我们需要的元素并不在当前可视页面中,那么selenium就无法对其进行操作;此时,我们就需要像平时操作浏览器一样来滚动页面,使我们需要操作的对象可见!滚动页面# 向下滚动500个像素driver.execute_script('window.scrollBy(0,500)')# 向上滚动500个像素driver.execute_script('window.scrollBy(0,-500)')# 向右滚动500个像素driver.execute_scr.转载 2021-05-08 12:56:28 · 10059 阅读 · 1 评论 -
Python selenium报错:selenium.common.exceptions.ElementClickInterceptedException
python + selenium 执行时报错:selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <a href="https://blog.csdn.net/xp178171640/article/details/115144126" data-report-click="{"spm":&quo原创 2021-05-08 12:45:47 · 2699 阅读 · 4 评论 -
Python 帮助信息(pydoc模块)
pydoc 模块导人了一个 Python 模块,并使用它的内容在运行时生成帮助文本 只要 对象中包含 docstring输出便会包括所有这些对象的 docstring 这里会描述模块的所有类、 方法和函数。1 纯文本帮助使用命令:...原创 2021-05-07 20:39:04 · 1673 阅读 · 7 评论 -
Python 高层文件操作(shutil模块)(转载)
shutil模块 引入: import shutil copy() 功能:复制文件格式:shutil.copy('来源文件','目标地址')返回值:复制之后的路径copy2() 功能:复制文件,保留元数据格式:shutil.copy2('来源文件','目标地址')返回值:复制之后的路径copyfileobj() 将一个文件的内容拷贝的另外一个文件当中格式:shutil.copyfileobj(open(来源文件,'r'),open('目标文件','w'))返回值:转载 2021-05-07 20:03:01 · 1555 阅读 · 0 评论 -
Python 目录及文件操作(os.模块)
Python os模块常用函数详解当前使用平台:os.name #返回当前使用平台的代表字符,Windows用'nt'表示,Linux用'posix'表示当前路径和文件os.getcwd() #返回当前工作目录os.listdir(path) #返回path目录下所有文件列表绝对路径os.path.abspath(path) #返回path的绝对路径系统操作:os.system() #运行shell命令>>>os.system('cmd') #Windo转载 2021-05-06 20:47:32 · 1432 阅读 · 0 评论 -
Python 路径处理(os.path模块)
os.path主要对文件、文件夹进行处理,常用的函数可以分为四类:解析路径split() # 将路径分离成路径和文件名splitext() # 将路径分离成路径和文件后缀splitdriver() # 将路径费力成盘符和文件路径import os.pathcur_path = r'D:\PythonProject\TestPython\test.py'print(os.path.split(cur_path))print(os.path.splitext(cur_path))pri原创 2021-04-30 23:23:25 · 2671 阅读 · 3 评论 -
Python 定时任务(apscheduler模块)
APScheduler (advanceded python scheduler)是一款Python开发的定时任务工具。支持异步执行、后台执行调度任务。 APScheduler 支持三种调度任务: 固定时间间隔固定时间点(日期)Linux 下的 Crontab 命令安装 pip install apscheduler使用方式 新建一个 schedulers (调度器) 。添加一个调...转载 2021-04-28 14:05:16 · 2689 阅读 · 0 评论 -
Python 参数解析(getopt模块)
getopt模块可以用来解析运行时的输入参数。它是标准库模块,无需使用pip install安装。getopt()函数介绍getopt模块中主要使用的函数为getopt(),其函数原型为:def getopt(args, shortopts, longopts = [])各个参数含义如下:args一般是sys.argv[1:], sys.argv[0]为文件名,不属于参数。shortopts为短参数,短参数表示以一个字母表示的参数。如果短参数有值,要求在该短参数后接一个冒号':'。long原创 2021-04-27 15:28:47 · 2680 阅读 · 0 评论 -
Python 文件(文件夹)匹配(glob模块)(转载)
python 的标准库模块glob使用教程,主要为glob.glob函数使用与glob.iglob函数使用 文章目录: 1 glob模块介绍2 glob模块的具体使用2.1 查看glob模块有哪些方法属性2.2 glob.glob(pathname, *, recursive=False)函数的使用2.2.1 函数glob.glob()定义:2.2.2 glob.glob()函数的参数和返回值2.2.3 glob.glob()函数使用实例 2.3 glob.iglob(pathname, recu.转载 2021-04-26 19:43:43 · 1915 阅读 · 0 评论 -
Python ini文件读取(configparser模块)(转载)
简介 ConfigParser模块在python3中修改为configparser.这个模块定义了一个ConfigParser类,该类的作用是使用配置文件生效,配置文件的格式和windows的INI文件的格式相同 该模块的作用 就是使用模块中的RawConfigParser()、ConfigParser()、 SafeConfigParser()这三个方法(三者择其一),创建一个对象使用对象的方法对指定的配置文件做增删改查 操作。 配置文件有不同的片段组成和Linux中repo文件中的格式类似: 格转载 2021-04-26 09:42:28 · 1564 阅读 · 0 评论 -
Python XML读写(xml.etree.ElementTree模块)(转载)
带分隔符的文件仅有两维的数据:行 & 列。如果我们想在程序之间交换数据结构,需要一种方法把层次结构,序列,集合和其它的数据结构编码成文本。今天要说的 XML 是最突出的处理上述这种转换的标记格式,它使用标签(tag)分隔数据。XML 在软件领域的用途非常广泛。XML 是什么?如果非要对其做一个定义式的说明,那这里我不得不引用一下 w3school 里面简洁而明快的说明:XML 指可扩展标记语言(EXtensible Markup Language);XML 是一种标记语言,类似于 HTM转载 2021-04-23 18:04:41 · 2706 阅读 · 0 评论 -
Python (python -m venv)命令创建虚拟环境
1 进入CMD, 使用命令python -m venv创建虚拟环境C:\Users\xupeng>python -m venv d:\test_venvC:\Users\xupeng>就会在d:\test_venv下创建虚拟环境。2 进入Scripts目录,并执行命令activate.bat进行激活activate.bat其实就位于Scripts目录下:C:\Users\xupeng>cd d:\test_venvC:\Users\xupeng>d:d:\te原创 2021-04-21 15:06:57 · 23003 阅读 · 3 评论 -
Python pip freeze获取安装的Python包并使用pip install -r还原到这些包环境(转载)
使用 pip freeze 获取安装的 Python 包 有时,我们为了代码稳定、代码迁移等,需要获取当前 Python 工程依赖包的安装列表。这个列表要包括需要安装什么包、以及包的版本。这便是:requirements.txt。 pip 使用 requirements.txt 安装 输入命令: pip install -r requirements.txt即可安装 requirements.txt 中的所有包(指定版本)。 pip freeze 使用 pip freeze 会输出所有在本转载 2021-04-21 11:23:04 · 2046 阅读 · 0 评论 -
Python+Selenium+Edge浏览器安装与简单运行(2/2)
前一篇文章[Python+Selenium+Edge浏览器安装与简单运行(1/2)]介绍了环境的安装,本篇就就介绍下如何控制bilibili搜索’日本核废水‘的相关视频。先放上最终的程序test_webdriver.py:from time import sleepfrom selenium import webdriverdriverfile_path = r'C:\Program Files\Python36\msedgedriver.exe'one_driver = webdriver.E原创 2021-04-21 10:57:44 · 9738 阅读 · 3 评论 -
Python Pycharm创建虚拟环境
Python的虚拟环境是与正常创建的环境相对应的。在虚拟环境中安装的包是与外部环境隔离的。也就是说,虚拟环境中的包只在虚拟环境中有效。那么Pycharm中如何创建虚拟环境呢?其中在创建项目的时候,就有创建虚拟环境的选项:点选New environments using, 选择Virtualenv,选择项目存放位置与Python解释器的版本,即可创建一个虚拟环境,我们的项目都在此虚拟环境中操作。工程创建完成后,Ctrl+Alt+S打开设置界面:界面左侧选择Python Interpreter即原创 2021-04-20 19:55:13 · 21942 阅读 · 4 评论 -
Python Json读写(json模块)(转载)
JSON包的引用python对象与JSON对象的互相转换存取JSON文件python官方帮助文档 JSON包的引用 在文件头部引用json包 import jsonpython对象与JSON对象的互相转换 json对象的类型为’str’: dic = {'b':'I', 'a':123, 'c':'100'}j1 = json.dumps(dic)print (j1)# {"b": "I", "a": 123, "c": "100"}print (type(j1))# &转载 2021-04-20 09:39:22 · 1444 阅读 · 0 评论 -
Python 使用Protobuf(struct模块)
Protobuf的原理及有点xml、json是目前常用的数据交换格式,它们直接使用字段名称维护序列化后类实例中字段与数据之间的映射关系,一般用字符串的形式保存在序列化后的字节流中。消息和消息的定义相对独立,可读性较好。但序列化后的数据字节很大,序列化和反序列化的时间较长,数据传输效率不高。Protobuf和Xml、Json序列化的方式不同,采用了二进制字节的序列化方式,用字段索引和字段类型通过算法计算得到字段之前的关系映射,从而达到更高的时间效率和空间效率,特别适合对数据大小和传输速率比较敏感的场原创 2021-04-19 20:19:44 · 3638 阅读 · 2 评论 -
常用Android模拟器的默认监听端口(转载)
转载 2021-04-18 20:38:51 · 1901 阅读 · 0 评论 -
Python+Appium+夜神模拟器安装与简单运行(2/2)
前一篇文章Python+Appium+夜神模拟器安装与简单运行(1/2)介绍了环境配置与启动App,本篇就就介绍下如何控制bilibili搜索’日本核废水‘的相关视频。使用Appium控制App涉及到一个无法绕开的问题,就是查找到要操作的元素。查找元素有两个方法:使用安装Android SDK时安装的uiautomatoviewer程序,它由uiautomatoviewer.bat启动(如果启动时报错,请参考运行uiautomatorviewer.bat报错No suitable Java foun原创 2021-04-18 20:24:26 · 1883 阅读 · 6 评论 -
运行uiautomatorviewer.bat报错No suitable Java found
安装完Android SDK后,使用uiautomatorviewer.bat来连接安卓模拟器获取页面元素时,报错如下:ERROR: No suitable Java found. In order to properly use the Android DeveloperTools, you need a suitable version of Java JDK installed on your system.We recommend that you install the JDK versio原创 2021-04-18 14:47:21 · 2866 阅读 · 0 评论 -
Python struct模块与简单使用
简介struct模块主要用在网络编程中,将要发送的数据转换成字节流形式使用函数struct.pack();将收到的字节流解析成具体数据使用函数struct.unpack();这两个函数都会用到一个格式字符串,计算格式字符串的长度使用函数struct.calcsize();这三个函数是struct模块中最常使用的函数,其函数声明为:pack(fmt, v1, v2, ...) ------ 根据所给的fmt描述的格式将值v1,v2,…转换为一个字符串。unpack(fmt, bytes) -----原创 2021-04-17 18:23:42 · 1763 阅读 · 2 评论 -
Python+Appium+夜神模拟器安装与简单运行(1/2)
Appium是一个开源的,适用于原生或混合移动应用( hybrid mobile apps )的自动化测试工具,Appium应用WebDriver: JSON wire protocol驱动安卓和iOS移动应用。这套组合是要来使用python操控模拟其中的App,安装的过程比较简单,但是又比较繁琐。总共需要安装Python、JDK、Android Studio、Appium以及夜神模拟器,为了方便以后重新配置环境,故简单记录下配置运行环境的过程。环境安装1 Python安装下载Python的下.原创 2021-04-15 11:55:45 · 5175 阅读 · 4 评论 -
Python 格式化字符串f-string概览(转载)
简介 f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法,该方法源于PEP 498 – Literal String Interpolation,主要目的是使格式化字符串的操作更加简便。f-string在形式上是以 f 或 F 修饰符引领的字符串(f'xxx' 或 F'xxx'),以大括号 {} 标明被替换的字段;f-string在本质上并不是字符串常量,而是一个在运行时运算求值的表达式: While o转载 2021-04-14 17:56:04 · 1454 阅读 · 0 评论 -
Python socket.send()与socket.sendall()的区别
先上Python/C API 参考手册中对两个函数的解释:socket.send(bytes[, flags])Send data to the socket. The socket must be connected to a remote socket. The optional flags argument has the same meaning as for recv() above. Returns the number of bytes sent. Applications are res原创 2021-04-13 20:03:15 · 2720 阅读 · 0 评论 -
Python csv文件读写(csv模块)(转载)
CSV是英文Comma Separate Values(逗号分隔值)的缩写,顾名思义,文档的内容是由 “,” 分隔的一列列的数据构成的。CSV文档是一种编辑方便,可视化效果极佳的数据存储方式。而Python中有着非常强大的库可以处理这种文档,所以,如果你经常用Python处理数据的话,CSV文档当然是一种简单快捷的轻量级选择。下面我将以一个数据处理的例子入手,展现CSV文档的创建和编辑,以及Python是如何对CSV文档读写的。 CSV文档的创建和编辑 1. 良好的Excel交互 (1) Excel.转载 2021-04-13 09:36:26 · 2748 阅读 · 0 评论 -
Python print()重定向 不输出到屏幕
有这样一个需求:如果一个函数handle_data()其内部有调用print()直接输出数据到屏幕,但是在某次调用handle_data()时又希望其不输出到屏幕,可以使用装饰器来进行处理。具体实现代码如下:import osimport sysdef print_redict_wrapper(input_func): def wrapper(data): with open('temp.dat', 'w') as dest_file: old_o原创 2021-04-01 16:09:03 · 2462 阅读 · 2 评论 -
Pycharm 常用快捷键
2021.04.01前进:Ctrl + Alt + Right后退:Ctrl + Alt + left跳转到函数定义:Ctrl + B注销行与取消注释行:Ctrl + /另起一行:Shift + Enter向上另起一行:Ctrl + Alt + Enter原创 2021-04-01 14:07:13 · 1234 阅读 · 0 评论 -
Python+Selenium+Edge浏览器安装与简单运行(1/2)
本文讲述如何安装selenium并使用Python操作Edge浏览器打开网页的简单流程。概述Selenium [1] 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。前置条件:安装Python安装selenium1 安装selenium直接使用命令pip install selenium即原创 2021-03-31 10:34:42 · 18136 阅读 · 1 评论 -
修改pip install镜像源
现状一般安装python之后,pip默认的镜像地址是:https://pypi.org/simple 但是由于默认的官方pypi经常被墙,或者连接速度较慢,导致pip安装经常不可用或者下载安装包失败,所以我们最好是将自己使用的pip源更换一下,使用境内的pip镜像安装源。网上有很多可用的源,例如:清华大学:https://pypi.tuna.tsinghua.edu.cn/simple 清华大学的pip源是官网pypi的镜像,每隔5分钟同步一次,重点推荐!!!阿里云:http://mirrors.a转载 2021-03-31 09:39:47 · 11771 阅读 · 0 评论 -
Python 标准库
https://docs.python.org/zh-cn/3/library/原创 2021-03-30 19:59:07 · 1215 阅读 · 0 评论 -
Python 函数参数传递的困惑
由于没有系统的学习过Python,许多知识点都是破碎的,无法形成一个整体。总喜欢用其他语言来类比Python的语法。例如,对于参数传递,总觉得Python也会像C++那样分为值传递与引用传递。回来无意间看到一篇博文,才发现其实区别很大。首先,Python的函数参数传递,没有值传递和引用传递之分,因为根本没有引用传递的调用方式。其次,就算都只有值传递,Python的值传递也跟C++的值不一样。C++的值传递方式,实参的值是不会在函数调用之后有任何改变的,这点毫无疑问。而Python的值传递方式(这里姑且还原创 2021-03-23 22:08:48 · 1834 阅读 · 3 评论 -
Python小技巧
同时输入多个字符串,字符串间以逗号/空格间隔a,b,c=input('三个字符串:').split(',') // 字符串以逗号隔开a,b,c=input('三个字符串:').split(' ') // 字符串以空格隔开,默认分隔符就是空格,等同于.split()待添加...原创 2021-03-20 16:47:11 · 1382 阅读 · 0 评论 -
Python 中的 if __name__ == ‘__main__‘ 该如何理解
这个问题来自于知乎用户的提问,当时看到这个问题,我只是做了下简单的回答。后来我发现,对于很多人来说,更准确的说应该是大部分的 Python 初学者,对这个问题理解的不是很深刻。所以这里我来做下总结,并试图把这个问题说明白。程序入口对于很多编程语言来说,程序都必须要有一个入口,比如 C,C++,以及完全面向对象的编程语言 Java,C# 等。如果你接触过这些语言,对于程序入口这个概念应该很好理解,C 和 C++ 都需要有一个 main 函数来作为程序的入口,也就是程序的运行会从 main 函数开始。同样.转载 2021-03-20 16:27:08 · 1370 阅读 · 0 评论 -
PyCharm报错ModuleNotFoundError: No module named requests
已经安装了requests库,在PyCharm中python文件中import requests却依旧报错,报错如下:Traceback (most recent call last): File "D:/Python Test/test.py", line 1, in <module> import requestsModuleNotFoundError: No module named 'requests'pip list显示已经安装requests。(如果未安装,需原创 2020-05-18 16:16:33 · 30992 阅读 · 17 评论 -
python爬虫之BeautifulSoup4基础教程
BeautifulSoup是python解析html非常好用的第三方库!一 安装pip install beautifulsoup4二 导入from bs4 import BeautifulSoup三 解析库BeautifulSoup默认支持Python的标准HTML解析库,但是它也支持一些第三方的解析库:四 使用技巧有这样一个网页html:<!DOCTYPE html><!--STATUS OK--><html> <head>转载 2020-05-15 15:07:04 · 1806 阅读 · 0 评论