
人生苦短,我用Python
人生苦短,我用Python
pengjunlee
不学自知,不问自晓,古今行事,未之有也。
展开
-
python如何更改pip源
python默认的pip源在国外,如果下载比较大的第三方库时可能会非常非常慢,甚至会报错,所以为了有一个更加友好的python使用体验,建议为python的pip换一下源。命令行加参数的方法# 用默认源下载 pip install库名==版本# 使用特定源下载pipinstall库名==版本 -i 源地址推荐第二种方法,比如我用阿里云的pip源持久化配...转载 2020-04-27 19:25:15 · 2303 阅读 · 0 评论 -
网页爬虫中\xa0、\u3000等字符的解释及去除
\xa0表示不间断空白符,爬虫中遇到它的概率不可谓不小,而经常和它一同出现的还有\u3000、\u2800、\t等Unicode字符串。单从对\xa0、\t、\u3000等含空白字符的处理来说,有以下几种方法可行:使用re.sub使用正则表达式可以轻松匹配所有空白字符,它对于Unicode字符也是有效的,比如:>>> import re>>> s...转载 2020-03-05 14:39:17 · 17696 阅读 · 0 评论 -
python+selenium+webdriver 截取全页面长图
有的时候我们要截取整个页面,而不是当前的屏幕。python+selenium+webdriver 截取全页面长图:from selenium import webdriverimport timeimport os.pathimport multiprocessing as mpfrom selenium.webdriver.chrome.options import Optio...转载 2020-03-03 17:20:44 · 1921 阅读 · 1 评论 -
Python中Base64编码与解码
图片转base64#image转base64import base64with open("C:\\Users\\wonai\\Desktop\\1.jpg","rb") as f:#转为二进制格式 base64_data = base64.b64encode(f.read())#使用base64进行加密 print(base64_data) file=open(...转载 2020-03-03 17:46:22 · 863 阅读 · 0 评论 -
python 时间字符串和时间戳之间的转换
1.将字符串的时间转换为时间戳 a = "2013-10-10 23:40:00" # 将其转换为时间数组 import time timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S") # 转换为时间戳 timeStamp = int(time.mktime(timeArray)) timeS...转载 2019-11-06 19:01:58 · 6754 阅读 · 0 评论 -
Python获取秒级时间戳与毫秒级时间戳
1、获取秒级时间戳与毫秒级时间戳、微秒级时间戳import timeimport datetimet = time.time()print (t) #原始时间数据print (int(t)) #秒级时间戳print (int(round(t * 1000))) #毫秒级时间戳print (in...转载 2019-10-24 11:33:08 · 52284 阅读 · 0 评论 -
python如何将列表导出为csv文件
import pandas as pdlist=[[1,2,3],[4,5,6],[7,8,9]]column=['column1','column2','column3'] # 列表对应每列的列名test=pd.DataFrame(columns=column,data=list)test.to_csv('D:/test.csv') # 如果生成excel,可以用to_exce...转载 2019-10-24 11:31:16 · 13775 阅读 · 1 评论 -
np.c_ 对比 np.r_
例子import numpy as npa = np.array([1, 2, 3])b = np.array([4, 5, 6])c = np.c_[a,b]print(np.r_[a,b])print(c)print(np.c_[c,a])np.r_ 是按行连接两个矩阵,就是把两矩阵上下相连,要求列数相等,类似于pandas中的 concat()。np.c_ 是按列...转载 2018-09-15 15:10:43 · 40954 阅读 · 0 评论 -
numpy.ravel() vs numpy.flatten()
首先声明两者所要实现的功能是一致的(将多维数组降位一维),两者的区别在于返回拷贝(copy)还是返回视图(view),numpy.flatten()返回一份拷贝,对拷贝所做的修改不会影响(reflects)原始矩阵,而numpy.ravel()返回的是视图(view,也颇有几分C/C++引用reference的意味),会影响(reflects)原始矩阵。1. 两者的功能>>&...转载 2018-09-15 15:06:31 · 42081 阅读 · 0 评论 -
numpy.meshgrid()理解
本文的目的是记录meshgrid()的理解过程:step1. 通过一个示例引入创建网格点矩阵;step2. 基于步骤1,说明meshgrid()的作用;step3. 详细解读meshgrid()的官网定义;说明:step1和step2 的数据都是基于笛卡尔坐标系的矩阵,目的是为了方便讨论。step1. 通过一个示例引入创建网格点矩阵;示例1,创建一个2行3列的网格点矩阵。...转载 2018-09-15 15:02:27 · 42577 阅读 · 0 评论 -
Python+Selenium中对指定元素截图
# -*- coding: utf-8 -*-from PIL import Imagefrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriv...原创 2019-06-20 14:09:06 · 26748 阅读 · 6 评论 -
Python中字符串截取
原文地址:https://www.cnblogs.com/xunbu7/p/8074417.htmlstr = ‘0123456789’print str[0:3] #截取第一位到第三位的字符print str[:] #截取字符串的全部字符print str[6:] #截取第七个字符到结尾print str[:-3] #截取从头开始到倒数第三个字符之前print str[2] #...转载 2019-06-19 13:38:59 · 29281 阅读 · 0 评论 -
Python中Base64编码与解码
Base64简介Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符(包括a-z、A-Z、0-9、/、+)来表示二进制数据的方法。Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。按照RFC2045的定义,Base64被定义为:Base64内容传送编码被设计用来把任意序列的8位字节描述为一种不易被人直接识...原创 2019-06-07 13:16:30 · 82675 阅读 · 0 评论 -
Linux下使用源码包安装Python
目录准备环境:Python的下载和安装常见问题准备环境:Linux:CentOS Linux release 7.2.1511 (Core)Python:Python-3.7.3Python的下载和安装CentOS 7.2 自带了Python2.7.5,我们需要另行安装Python 3.7.3。但是由于系统运行依赖于自带的Python2.7.5,因此千万不可删除系统...原创 2019-04-08 18:34:18 · 35423 阅读 · 3 评论 -
使用Python操作redis
目录安装redis连接redis直接连接连接池连接哨兵连接常用操作String操作Hash操作List操作Set操作Zset操作Key操作Pipeline操作参考文章:安装redis在python中操作Redis数据库需要先安装redis模块。pip install redis连接redisredis提供...原创 2019-04-11 09:50:04 · 33301 阅读 · 0 评论 -
Python--使用logging模块
目录认识loggingloggerhandlerfilterformater配置loggingbasicConfigfileConfig1. 编写配置文件2.通过fileConfig()函数读取配置dictConfig参考文章认识logginglogging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日...原创 2019-04-29 16:24:02 · 27584 阅读 · 0 评论 -
Python爬虫代理池搭建
目录一、为什么要搭建爬虫代理池二、搭建思路三、代码实现ipproxy.pysettings.pyproxy_queue.pyproxy_util.pyproxy_crawlers.pyrun.py四、代理测试一、为什么要搭建爬虫代理池在众多的网站防爬措施中,有一种是根据ip的访问频率进行限制,即在某一时间段内,当某个ip的访问次数达到一定的阀值时,该...原创 2019-05-13 15:37:19 · 56922 阅读 · 12 评论 -
在Python中连接MongoDB集群(MongoDB Cluster)
建立了一个MongoDB集群,集群名称 replSet=rs0,包含以下3 个节点:172.16.250.233:27017 # SECONDARY172.16.250.234:27017 # PRIMARY172.16.250.237:27017 # SECONDARY集群的 test 用户的密码为 “123456” ,只能访问 test 数据库。另外还有一个MongoDB数...转载 2019-05-16 16:35:31 · 31673 阅读 · 0 评论 -
Python中optparser库用法实例详解
目录简介引入初始化带有Usage选项:不带Usage选项:添加选项核心非核心完整的demo总结原文地址:https://www.jb51.net/article/133785.htm本文研究的主要是Python中optparser库的相关内容,具体如下。一直以来对optparser不是特别的理解,今天就狠下心,静下心研究了一下这个库。当然了...转载 2019-05-23 18:23:38 · 28805 阅读 · 0 评论 -
Python中Selenium的使用
目录Selenium简介安装Selenium-PythonSelenium-Server的安装与使用Selenium常用操作请求一个页面查找元素填写表格拖放在不同的窗口和框架之间移动访问浏览器历史记录操作Cookies等待页面加载完成显式等待隐式等待页面对象python_test.pypage.pyelement.py...翻译 2019-05-30 09:10:45 · 30837 阅读 · 1 评论 -
玩转python selenium鼠标键盘操作(ActionChains)
目录1.ActionChains基本用法链式写法分步写法2.ActionChains方法列表3.代码示例1.点击操作2.鼠标移动3.拖拽4.按键示例1:示例2:用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。而selenium给我们提供了一个类来处理这类事件——ActionChains...转载 2019-05-31 14:47:29 · 30631 阅读 · 0 评论 -
使用 mitmproxy + python 做拦截代理
目录mitmproxy 是什么安装运行脚本事件1. 针对 HTTP 生命周期2. 针对 TCP 生命周期3. 针对 Websocket 生命周期4. 针对网络连接生命周期5. 通用生命周期示例最后原文地址:https://blog.wolfogre.com/posts/usage-of-mitmproxy/本文是一个较为完整的mit...转载 2020-04-14 18:15:58 · 28780 阅读 · 1 评论 -
Windows下Python的安装与配置
目录Python的下载和安装Jupyter Notebook的安装与启动PyCharm的下载与安装常用库的安装及功能简介Python的下载和安装首先,我们需要通过Python官方网站下载 Python 安装包,目前最新的版本是 3.7.2 。在官网首页的导航条上找到“Downloads”按钮,鼠标悬停在上面时会出现一个下拉菜单,如下图所示。在下拉菜单中,根据自己的操...原创 2019-04-08 18:27:47 · 31300 阅读 · 0 评论