Python打开目录下所有文件
用Python打开指定目录下所有文件,统计文件里特定的字段信息。
这里是先进入2017-02-25到2017-03-03目录,然后进入特定IP段目录下,最后打开文件进行统计
import os, glob, re, sys
from isCN import *
urllocate = 6
if(len(sys.argv) < 3):
print 'Useage comand JDName JDIPduan';
os.exit()
print sys.argv[1];
ipDuan = sys.argv[2]
for i in range(1, 8+1):
singleStream = 0
in2out = 0
lineNum = 0
if(i >= 1 and i <= 3 ):
day = '2017-03-0' + str(i)
if(i >= 5 and i <= 8 ):
day = '2017-02-2' + str(i)
if(i == 4):
continue
try:
os.chdir('./' + day)
except:
continue
files = glob.glob(ipDuan)
for f in files:
print f;
try:
f = open('./' + f + '/find_prog.log')
except:
continue
#print f;
while True:
line = f.readline()
if not line: break
lineNum = lineNum + 1
#print line,
fields = line.split('\t')
length = len(fields)
#print 'length='+str(length);
if(length >= urllocate):
url = fields[urllocate-1]
url = url.strip()
#print url,
if(url=='null'):
singleStream = singleStream + 1
try:
cipPort = fields[1].split('-')[0]
cip = cipPort[0 : cipPort.rindex('.')]
#print cip;
if(iscn(cip) == True):
in2out = in2out + 1
except:
continue
line = f.readline()
f.close()
#print 'single=' + str(singleStream);
#print 'lineNum=' + str(lineNum);
print day + ' cn2foreign = ' + str(in2out) + '/' + str(lineNum) + ' = ' + str(1.0 * in2out / lineNum) + '\n';
print day + ' singleStream = ' + str(singleStream) + '/' + str(lineNum) + ' = ' + str(1.0 * singleStream / lineNum) + '\n';
其中用到了别人的库,用于判断IP是否属于国内IP
python JDStatistic.py JDName 10.*
Python打开目录下所有文件的更多相关文章
- Python遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例
遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例: #-*- encoding: utf-8 -*- __author__ = 'liudong' import linecache,sys ...
- Python 打开目录与指定文件
Python打开外部文件有很多方法, os.popen打开外部程序,但发现只能打开文件所在目录的文件 os.system可打开外部文件os.system(command) command 要执行的命令 ...
- Python语言获取目录下所有文件
#coding=utf-8# -*- coding: utf-8 -*-import osimport sysreload(sys) sys.setdefaultencoding('utf-8') d ...
- Python遍历目录下xlsx文件
对指定目录下的指定类型文件进行遍历,可对文件名关键字进行条件筛选 返回值为文件地址的列表 import os # 定义一个函数,函数名字为get_all_excel,需要传入一个目录 def get_ ...
- python遍历目录下所有文件
# -*- coding:utf-8 -*- import os if __name__ == "__main__": rootdir = '.\data' list = os.l ...
- python获取目录下所有文件
#方法1:使用os.listdir import os for filename in os.listdir(r'c:\\windows'): print filename #方法2:使用glob模块 ...
- python拷贝目录下的文件
#!/usr/bin/env python # Version = 3.5.2 import shutil base_dir = '/data/media/' file = '/backup/temp ...
- python对目录下的文件进行 多条件排序
在进入正题之前,先介绍一下基础知识: 1.sort(),方法:就是对列表内容进行正向排序,直接在原列表进行修改,返回的是修改后的列表 lists =[1, 5, 10, 8, 6]lists.sort ...
- python 读取目录下的文件
参考方法: import os path = r'C:\Users\Administrator\Desktop\file' for filename in os.listdir(path): prin ...
随机推荐
- Provided Maven Coordinates must be in the form 'groupId:artifactId:version'.
[hadoop@hadoop1 bin]$ ./spark-shell --packages org.mongodb.spark:mongo-spark-connector_2.10-2.2.1 Ex ...
- Codeforces Round #254 (Div. 2):B. DZY Loves Chemistry
B. DZY Loves Chemistry time limit per test 1 second memory limit per test 256 megabytes input standa ...
- 基于Python 的简单推荐系统
def loadExData(): return[[1,1,1,0,0], [2,2,2,0,0], [1,1,1,0,0], [5,5,5,0,0], [1,1,0,2,2], [0,0,0,3,3 ...
- dedecms列表页如何调用栏目关键词和描述
问:dedecms列表页如何调用栏目关键词和描述 答:有人问起dedecms列表页如何调用栏目关键词和描述.解答如下: 自己实验了下总结方法如下:(以下方法使用于栏目封面和列表和内容页,其他的地方没有 ...
- HashSe、LinkedHashSet、TreeSet(java基础知识十七)
1.HashSet存储字符串并遍历 * 特点:无序.无索引.无重复 HashSet存储字符串并遍历 HashSet<String> hs = new HashSet<>(); ...
- MYSQL进阶学习笔记二:MySQL存储过程和局部变量!(视频序号:进阶_4-6)
知识点三:MySQL存储过程和局部变量(4,5,6) 存储过程的创建: 创建存储过程的步骤: 首先选中数据库 改变分隔符,不让分号作为执行结束的标记.(通常情况下,改变分隔符命令 DELIMI ...
- Python项目使用memcached缓存
前言许多Web应用都将数据保存到MySQL这样的关系型数据库管理系统中,应用服务器从中读取数据并在浏览器中显示. 但随着数据量的增大.访问的集中,就会出现数据库的负担加重.数据库响应恶化. 网站显示延 ...
- phpstorm 10 初体验
一:安装phpstorm 10 去phpstorm 10官网下载,安装 https://www.jetbrains.com/phpstorm/ 按照提示安装,最后注册步骤,选择“License ser ...
- You can't specify target table 'xxx' for update in FROM clause
1.执行sql语句报上面的错误: DELETE FROM db_student WHERE RowGuid IN ( SELECT RowGuid FROM db_student WHERE age ...
- kubernetes1.13.1部署ingress-nginx-十一
一.Ingress 简介 (1) 在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的. 为了使外部的应用能够访问集群内的服务, 在Kubernetes ...