
代码片段
mighty13
这个作者很懒,什么都没留下…
展开
-
使用Python根据扩展名将子目录的文件移动到指定目的目录
功能说明将源目录下子目录中的文件移动到指定目的目录。要求如下:子目录中仅包含指定扩展名的文件才会移动文件。如果目的目录已包含同名文件,将文件重命名为原文件名 13位时间戳例如:当前目录结构如下:test│ 2.txt│├─1│ │ 1.txt│ ││ └─2│ 2.txt│├─2│ │ 3.txt│ ││ └─3└─3 2.txt运行后的目录结构如下:test│ 2 1618156462496.txt│原创 2021-04-13 02:03:41 · 30562 阅读 · 0 评论 -
Python递归删除嵌套空目录
在实际应用中,经常遇到需要删除空目录的情况,手动一一删除效率太低。通过Python标准库os可方便实现嵌套空目录的删除。问题假设现有test目录结构如下,需要删除test目录中的空目录。test└─1 │ 1.txt │ └─2 └─3解决方法要点利用os.rmdir方法删除空目录,当目录不为空时,会抛出异常。利用os.walk方法遍历test目录。注意os.walk方法的topdown参数。topdown参数为遍历方式,布尔值,默认值为True原创 2021-04-12 00:06:45 · 30767 阅读 · 0 评论 -
python网页自动摘要和关键词提取
最近准备用django写一个CMS系统,把单位的网页迁移过去,在网上找了一个博客系统,但是不太满意,摘要和tags都需要自己输入,目标就是把他们实现自动化。之前搞爬虫接触过类似的库,readability,goose等都可以实现文本摘要,jieba具有提取tags的功能。goose主要作用是根据网址提取文本和标题。主要用的库有urllib2,beautifulsoup用法如下:原创 2016-05-09 17:11:06 · 31676 阅读 · 3 评论 -
Python字节单位转换(将字节转换为K M G T)
def bytes_to_human(n): symbols = ('K','M','G','T','P','E','Z','Y') prefix = {} for i,s in enumerate(symbols): prefix[s] = 1 << (i + 1) * 10 for s in reversed(symbols): if n >= prefix[s]: value = float(n)原创 2020-12-01 22:40:11 · 17884 阅读 · 0 评论 -
Python计算某时间戳与当前时间的时间差,输出格式为天时分秒
def timediff_to_str(timestamp): onlineTime = datetime.datetime.fromtimestamp(timestamp) localTime = datetime.datetime.now() result = localTime - onlineTime hours = int(result.seconds / 3600) minutes = int(result.seconds % 3600 / 60)原创 2020-12-01 22:34:03 · 18340 阅读 · 0 评论 -
京东图书详情页定价获取
京东图书详情页的定价无法直接获得,价格由类似http://p.3.cn/prices/mgets的URL提供。假设我们需要获取https://item.jd.com/10020908286750.html的定价。根据开发者工具可以获取对应的定价的URL为:http://p.3.cn/prices/mgets?type=1&callback=_getSkuPrice&skuIds=J_10020908286750注意!skuIds=J_10020908286750和1002090828原创 2020-11-30 22:44:17 · 16884 阅读 · 4 评论 -
根据内容按行号分割文本文件(仅适用小文件)
背景书稿用MD编辑,原来每章是一个独立的文件,在最后通稿时,合并成了一个大文件。问题来了,3万多行的MD文件,大部分编辑器用起来都极端缓慢,没办法只能按文本文件进行编辑。通完稿后又需要按章分割文件。。。。原理首先将MD文档按行转换为列表,然后在每行内容中查找模式字符串,也就是查找分割文件的标识,根据记录下的模式字符串所在的行号分割文件。代码#!/usr/bin/en...原创 2018-02-09 09:49:50 · 18618 阅读 · 0 评论 -
使用正则表达式保留数字、字母和反斜杠\
# coding: utf8import hashlibimport osimport sysimport refrom collections import Counterreload(sys)sys.setdefaultencoding('utf-8')if __name__ == "__main__": output_list=[] output_path=os.ge原创 2017-11-23 14:24:49 · 25115 阅读 · 0 评论 -
Python实现中文词云(wordcloud),根据背景图片生成词云
Python实现词云的库有很多,较为常见的就是wordcloud 这个库基于PIL,PIL是必不可少的,需要用的还有matplotlib和numpy安装pip install wordcloud使用针对库示例做了一个简单修改,直接使用generate_from_frequencies方法,而没有使用generate()方法。有这样几个原因,generate_from_frequencies是基础的原创 2017-09-29 21:31:15 · 46169 阅读 · 1 评论 -
Python利用WMI实现ping命令
WMI是Windows系统的一大利器,Python的win32api库提供了对WMI的支持,安装win32api即可使用 WMI。 本例通过WMI的WQL实现ping命令。import wmic = wmi.WMI()wql = "SELECT StatusCode FROM Win32_PingStatus WHERE Address = '127.0.0.1'"for i in c.que原创 2017-10-25 16:39:26 · 23619 阅读 · 0 评论 -
Selenium+phantomJS+Python 操作cookie实现自动登录(以音悦台为例)
每天都在音悦台(yinyuetai)听歌,原来看订阅歌手更新的MV必须登陆,而且原来每次登陆都需要用geetest的滑动验证码,懒得对验证码再多做工作。进来发现登陆不用每次输入验证码就动了利用cookie自动登录的念头思路登录,获取cookie找到登录框界面,音悦台的登录框是动态生成的,需要先点击下登录tab,然后才会加载登录框DIV,由于音悦台页面加载比较慢,因此可能需要等待一定时间等待元素加载原创 2017-10-06 23:57:25 · 24750 阅读 · 0 评论 -
Selenium操作CNKI(中国知网)网站的远见搜索
最近想对单位发表的期刊情况做一个文献计量学分析,数据倒也不多,但是手动保存优点麻烦。两年前用spynner.py做过抓取CNKI管理后台,spynner基本弃坑了,一直没再动过。CNKI网站为了反爬,做的太复杂,平时自己访问都感觉慢,一看源代码,加载了一堆js,能不慢吗?Python2,selenium操作如下(仅关键部分,代码不全):# coding: utf-8import timeimpor原创 2017-09-17 23:48:22 · 27597 阅读 · 0 评论 -
selenium、python模拟登陆淘宝
#coding=utf-8import timeimport datetimeimport sysimport osimport randomimport loggingfrom selenium import webdriverfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.support.u原创 2017-09-19 21:56:42 · 33256 阅读 · 0 评论 -
Python实现检测文件的MD5值来查找重复文件
平时学生交上机作业的时候经常有人相互复制,直接改文件名了事,为了能够简单的检测这种作弊行为,想到了检测文件的MD5值,虽然对于抄袭来说作用不大,但是聊胜于无,以后可以做一个复杂点的。#-*- coding: utf8 -*-import hashlibimport osimport globfrom collections import Counterimport sys#set sys原创 2017-09-15 21:15:27 · 27348 阅读 · 0 评论 -
Python遍历文件夹下所有文件及目录
#!/user/bin/python #!conding=utf8 import os g = os.walk("G:\mis") for path,d,filelist in g: for filename in filelist: print os.path.join(path, filename)原创 2017-09-15 21:16:24 · 167284 阅读 · 0 评论 -
H指数(h-index)的Python实现
H指数(H-index)是一种比较主流的科研评价方法,可用于评估研究人员的学术产出数量与学术产出水平。某人在一定期间内发表的论文至少有h篇的被引频次不低于h次,H指数指的就是h的最大值。例如,张三发表了10篇论文,其中有5篇论文被引用次数大于等于5次,而没有6篇论文的引用次数大于等于6次,那么张三的H指数即为5。'''输入一个列表,列表内容为某人的每篇文章的引用次数。输出H指数值'''def原创 2017-09-15 14:43:12 · 31942 阅读 · 1 评论 -
Python通过MD5值实现重复文件的检测
平时上课时学生上机作业经常有直接复制别人的文件,只修改文件名的抄袭情况,为了快速检测这种问题,通过MD5值简单的写了下,聊胜于无吧,有时间了写一个更完善的。# coding: utf8import hashlibimport osfrom collections import Counterimport sysreload(sys)sys.setdefaultencoding('utf-8'原创 2017-09-16 02:28:20 · 25177 阅读 · 0 评论 -
Python ISBN号概述,校验位计算,10位-13位转换,验证,连字符,及常用库isbnid,isbnlib,isbntools的使用
ISBN概述因为工作原因经常需要用到ISBN。ISBN是国际标准书号的简称(International Standard Book Number),主要用于标识文献,也即是文献的“身份证号”,通过查询ISBN号可以获取唯一的某一种书。 ISBN大致可以分为10位和13位ISBN,在2007年1月1日前用的是10位ISBN,之后用的13位ISBN。两者最显著的区别一是在10位ISBN前加上“978”原创 2017-09-25 14:46:51 · 33842 阅读 · 0 评论 -
音悦台(yinyuetai)api分析
用户订阅MV更新http://uapi.yinyuetai.com/i/flw/subscribe-video-list?page=1&pageSize=200&uid=XXXXXX uid为用户ID,pagesize最大200用户订阅艺人更新http://uapi.yinyuetai.com/i/flw/subscribe-list?page=1&pageSize=5&size=18&uid=x原创 2017-10-05 19:20:03 · 26495 阅读 · 1 评论 -
音悦台(yinyuetai)页面链接分析
在音悦台听歌时间不短了,从09年一直到现在,虽然近几年音悦台越做越大,但是在经常听的几种类型的歌的更新速度和全面性还不如A站和B站。但是毕竟这么多年了,还是想把自己关注的一些歌手和收藏给保留下来。13年做过一次,当时用spynner模拟登陆,做的比较粗糙。简单看了下现在的音悦台网站,饭团页面没什么大的变化,个人收藏MV和关注的艺人页面改用json传输数据,用户体验比以前强了很多,列表页面加载速度比较原创 2017-10-04 23:53:51 · 24500 阅读 · 0 评论 -
Python实现微信好友签名词云的构建(itchat、jieba、wordcloud)
最近Python操作微信的文章挺火的,结合前面介绍过的jieba和wordcloud做一个简单的微信好友签名的词云。操作微信的库有很多,现在比较流行的就是itchat,https://github.com/littlecodersh/ItChat这个库对网页微信进行了封装,很多操作都非常简单。代码如下,一些要点直接写在注释中# coding: utf8import sysreload(sys)原创 2017-10-04 00:29:16 · 24963 阅读 · 2 评论 -
Python微信好友信息意义及取值分析(基于itchat)
本文以itchat库为基础,提供了一些好友信息意义的分析。 itchat提供了get_friends(self, update=False)方法用于获取微信好友列表,返回信息是一个用户信息字典的列表。 列表第一个元素为用户个人信息。 用户信息键值示例如下。#内部用户名,@开头的是好友,@@开头的是群聊,itchat提供了 get_chatrooms()方法。每次登录都不一样。UserName原创 2017-10-04 11:12:36 · 25821 阅读 · 1 评论 -
爬取京东图书价格信息分析
因为工作关系,经常需要整理一些书目信息,由于对于图书方面大家也不太了解,所以提交过来的书目经常信息不全。再者因为某些原因需要到京东选一些书,懒得从京东复制粘贴信息。所以做了个简易爬虫,获取图书的书名、作者、ISBN、出版社、出版日期和定价。 其他信息倒还简单,就是定价信息稍微麻烦点,京东价格不是直接写在HTML里面的,而是异步加载的,通过firebug可以看到。 简单分析下,上面的jso原创 2017-09-23 08:29:38 · 25092 阅读 · 0 评论