小技能GET:Ubuntu安装部署IPProxy代理池
项目需要,在此部署一个代理IP池,在github上寻找到一个名为IPProxy项目
运行环境 Runtime environment12操作系统 : Ubuntu18.04LTS Python 3.6.6
背景项目的数据需要爬虫的支持,爬虫需要则需要IP代理池,来提高采集速度。由于爬取对象多少都会对同IP的请求量做出限制。
于是就在在github上寻找到一个名为IPProxy项目,这是一个代理池。
但是看起来也有一年不更新了..加上一些自己项目的需要,会对这个代理池进行特化的重构。
fork要是提交过去,也不知道领不领情就是了..2333
下载IPProxyIPProxy点击此处,到有关页面下载或者运行(前提本机已经安装git工具)如下命令:
git clone https://github.com/qiyeboy/IPProxyPool.git
在这里为了方便我的做法是,使用Pycharm。VCS>Checkout from Version Control>Git:
将克隆地址“https://github.com/qiyeboy/IPProxyPoo ...
小技能GET:Ubuntu安装Redis数据库
由于项目需要,所以打算重新在Ubuntu18上安装Redis数据库,营造测试环境。
运行环境 Runtime environment12操作系统 : Ubuntu18.04LTSSoftware: Redis Ubuntu版
背景项目的后台服务器,使用的还是Ubuntu16.04就连腾讯云也在提示更新了。但是并不知道Ubuntu18装上Redis会有哪些不同,于是在此做出尝试。
Redis在Linux Ubuntu中安装安装办法一般分为两种用:
从官网Redis下载离线包安装
直接通过Ubuntu终端输入命令来安装
由于以前尝试过使用离线包安装了,本次打算通过命令行在终端中实现安装,并以此为例。
安装前先更新一下aptsudo apt-get update
安装Redis服务器端命令sudo apt-get install redis-server
安装不出以外的话,一般都会有如下信息:
1234567891011121314151617181920212223242526272829303132333435363738正在读取软件包列表... 完成正在分析软件包的依赖 ...
疑难杂症:上传GitHub提示:noting to commit,working tree clean。
帮人远程弄hexo的时候,碰到了这样的错误。
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Pycharm 2018.2.4 x64 Python: 3.6.2
症状使用“hexo d”命令,上传博客到GitHubPages时出现了这样的提示。
报错信息:”nothing to commit, working tree clean”
解决办法在网上查了许久,上面所描述的情况多种多样。但是就我个人认为,主要的原因是:
是因为并没有修改要提交的项目,报的提示的意思是,项目(文件夹)没有被修改,没必要提交。
而hexo进行提交博客,需要使用hexo d命令,但是它是需要是使用 hexo-deployer-git 包的,
如果没有安装,它检索不到博文,进而提交时,让github发现项目没有发生变化,于是提交失败,弹出这种提示。
那么安装 hexo-deployer-git 就行了。
npm install hexo-deployer-git
总结其他的情况碰到noting to commit,working ...
疑难杂症:PyMySQL插入数据时报错:'latin-1' codec can't encode character 的解决方案
这两天在用python写DAO轮子,方便之后爬虫的数据存储。
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Pycharm 2018.2.4 x64 Python: 3.6.2
症状尝试在用INSERT INTO进行插入数据的时候,出现了报错。
报错信息:”latin-1’ codec can’t encode character”
这一般是因为编码不一致导致的,部分报错代码如下:
12345678910111213try: # 创建连接对象 conn = MySQLdb.connect( host=connect_dict["host"], port=connect_dict["port"], user=connect_dict["user"], passwd=connect_dict["passwd"], db=connect_dict[& ...
Python:使用操作FTP服务器实例!(上传,下载,遍历删除等)
项目的需要,利用ftplib模块开发的FTP客户端
运行环境 Runtime environment123操作系统 : Windows10IDE: JetBrains Python 2018.2.4 x64语言: Pytthon 3.65
背景年初的时候在知乎上查了许久,得知了几个不错的图床。其中一个名为爱信息图床的图床吸引了的注意。
这个图床能托管的不仅仅是图,还可以托管很多各种文件,并提供CDN服务,很强大,但是很可惜的是它没有API接口,一切只能通过注册登陆上传。
抱着试一试的心情,我向站点上看到的举报邮箱发出Email,经过一番沟通,居然申请到了专属的FTP通道,很是开心。
于是Python的FTP操作需求就在这里诞生了,本文进行详细的开发。
代码实例Python中官方包中自带有的ftplib模块定义了FTP类,首先来了解一下该模块所带的方法以及其作用
ftp登陆连接from ftplib import FTP # 加载ftp模块ftp=FTP() # 设置变量ftp.set_debuglevel(2) ...
Python:判断FTP服务器目录里是文件夹还是文件的方案!
Python原生的ftplib模块本身并不支持分辨FTP服务器上到底是文件夹还是文件。在这里,我总结了一个办法。
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Python 2018.2.4 x64 语言: Pytthon 3.65
背景Python原生的ftplib模块本身并不支持分辨FTP服务器上到底是文件夹还是文件。
也许会有人认为为啥不用os.path.isdir()和os.path.isfile()方法来分辨,在这里我可以很明确的讲。
对于在FTP服务器进行分辨文件夹还是文件这个需求上,os.path.isdir()和os.path.isfile()几乎没有作用!误判率极高!
代码实例经过一番思考,我想出了这样的解决思路。
使用ftplib模块的ftp.cwd()方法向目录下所有元素发出打开目录的请求,然后用try错误抓取错误信息,最后通过对错误信息进行if判断,来达成分辨FTP服务器某一目录下谁是文件谁是文件夹的目的。
关键代码示例如下:
123456789101112131415161 ...
疑难杂症:Python操作FTP时,TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
尝试完使用客户端登陆FTP服务器,以后便开始着手使用Python进行FTP操作。
运行环境 Runtime environment123操作系统: Windows10 IDE: JetBrains Pycharm 2018.2.4 x64 Python: 3.6.2
症状根据近日写的简单实例,进一步编写,Python连接FTP服务器的简单实例发现,能够通过Python登陆FTP,但是却无法进行如下操作:
ftp.dir() #显示目录下所有目录信息ftp.nlst() #获取目录下的文件ftp.mkd(pathname) #新建远程目录
这是ftplib模块自带的方法,用于FTP操作时获取信息的,当使用它们的时候出现如下报错:
123456789101112131415161718192021222324252627282930=====================FTP客户端=====================220--------- ...
疑难杂症:FTP无法登陆,发送AUTH TLS时提示:无法连接到服务器
使用FileZilla连接服务器的时候,无法登陆,从FTP日志中看到客户端在执行AUTH TLS命令后,提示“无法连接到服务器”的错误信息。
运行环境 Runtime environment12操作系统 : Windows10 SoftWare: FileZilla 3.37.4
症状使用FileZilla连接服务器的时候,无法登陆,从FTP日志中看到客户端在执行AUTH TLS命令后,提示“无法连接到服务器”的错误信息,具体内容如下面的日志所示:
123456789状态: 正在连接 xxxx...状态: 连接建立,等待欢迎消息...响应: 220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------响应: 220-You are user number 2 of 50 allowed.响应: 220-Local time is now 16:41. Server port: 21.响应: 220-This is a private system - No anonymous login响应: 220 You will ...
Python:Python连接FTP服务器的简单实例!
因为项目的需要,现在做一个简单的python链接FTP的尝试
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Python 2018.2.4 x64 语言: Pytthon 3.65
背景年初的时候在知乎上查了许久,得知了几个不错的图床。其中一个名为爱信息图床的图床吸引了的注意。
这个图床能托管的不仅仅是图,还可以托管很多各种文件,并提供CDN服务,很强大,但是很可惜的是它没有API接口,一切只能通过注册登陆上传。
抱着试一试的心情,我向站点上看到的举报邮箱发出Email,经过一番沟通,居然申请到了专属的FTP通道,很是开心。于是Python的FTP操作需求就在这里诞生了,本文进行一个最低限度尝试,以后再进行详细的开发。
代码实例Python中官方包中自带有的ftplib模块定义了FTP类,可用来实现简单的ftp函数。
123456789101112from ftplib import FTPip = '192.168.8.88'port = 21def test_ftp(): ...
Python:获取函数的参数名和参数名的默认值
学习某些框架的时候,它们的方法具体要传什么参,估计还要一个个查。在Pycharm一般可以用ctrl+p来查看,但是如果有些看不了可用此法。
运行环境 Runtime environment123操作系统 : Windows10 IDE: JetBrains Python 2018.2.4 x64 语言: Pytthon 3.6.5
背景方便开发中更好更快的了解一个函数的使用
代码实例123456789101112131415161718192021def f(a=1, b=2, c=3): print(locals())#在函数内获取#使用inspect模块,简单方便import inspectinspect.getfullargspec(f)#使用f的内置方法#获取默认值,如果参数名没有默认值则不在其中:print(f.__defaults__)#使用__code__#总参数个数print(f.__code__.co_argcount)#总参数名print(f.__code__.co_varnames)