当前位置:首页 » 编程语言 » extractPython

extractPython

发布时间: 2022-03-01 00:16:26

Ⅰ 请问python的 zipfile 怎么解压中文密码的zip文件

  • 是python2还是3?

  • 错误截图看一下

  • 也可以私信发zip包和代码来测试一下

Ⅱ 怎么从zip里提取文件 Python

Python自带模块zipfile可以完成zip压缩文件的读写,而且使用非常方便,下面就来演示一下Python读写zip文件:

Python读zip文件
下面的代码给出了用Python读取zip文件,打印出压缩文件里面所有的文件,并读取压缩文件中的第一个文件。
import zipfile
z = zipfile.ZipFile("zipfile.zip", "r")
#打印zip文件中的文件列表
for filename in z.namelist( ):
print 'File:', filename
#读取zip文件中的第一个文件
first_file_name = z.namelist()[0]
content = z.read(first_file_name)
print first_file_name
print content
Python写/创建zip文件
Python写Zip文件主要用到ZipFile的write函数。
import zipfile
z = zipfile.ZipFile('test.zip', 'w', zipfile.ZIP_DEFLATED)
z.write('test.html')
z.close( )
在创建ZipFile实例的时候,有2点要注意:
要用'w'或'a'模式,用可写的方式打开zip文件 压缩模式有ZIP_STORED 和 ZIP_DEFLATED,ZIP_STORED只是存储模式,不会对文件进行压缩,这个是默认值,如果你需要对文件进行压缩,必须使用ZIP_DEFLATED模式。

Ⅲ Python中extract_tags()怎么对多行文本提取特征词而不是一行一行计算

[python] view plain
#coding:utf-8
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
from multiprocessing import Pool,Queue,Process
import multiprocessing as mp
import time,random
import os
import codecs
import jieba.analyse
jieba.analyse.set_stop_words("yy_stop_words.txt")

def extract_keyword(input_string):
#print("Do task by process {proc}".format(proc=os.getpid()))
tags = jieba.analyse.extract_tags(input_string, topK=100)
#print("key words:{kw}".format(kw=" ".join(tags)))
return tags

#def parallel_extract_keyword(input_string,out_file):
def parallel_extract_keyword(input_string):
#print("Do task by process {proc}".format(proc=os.getpid()))
tags = jieba.analyse.extract_tags(input_string, topK=100)
#time.sleep(random.random())
#print("key words:{kw}".format(kw=" ".join(tags)))
#o_f = open(out_file,'w')
#o_f.write(" ".join(tags)+"\n")
return tags
if __name__ == "__main__":

data_file = sys.argv[1]
with codecs.open(data_file) as f:
lines = f.readlines()
f.close()

out_put = data_file.split('.')[0] +"_tags.txt"
t0 = time.time()
for line in lines:
parallel_extract_keyword(line)
#parallel_extract_keyword(line,out_put)
#extract_keyword(line)
print("串行处理花费时间{t}".format(t=time.time()-t0))

pool = Pool(processes=int(mp.cpu_count()*0.7))
t1 = time.time()
#for line in lines:
#pool.apply_async(parallel_extract_keyword,(line,out_put))
#保存处理的结果,可以方便输出到文件
res = pool.map(parallel_extract_keyword,lines)
#print("Print keywords:")
#for tag in res:
#print(" ".join(tag))

pool.close()
pool.join()
print("并行处理花费时间{t}s".format(t=time.time()-t1))

运行:
python data_process_by_multiprocess.py message.txt
message.txt是每行是一个文档,共581行,7M的数据

运行时间:

不使用sleep来挂起进程,也就是把time.sleep(random.random())注释掉,运行可以大大节省时间。

Ⅳ Python extract模块到底怎样安装呢

很多安装方法的,第一种利用2.7版本自带的pip安装,在cmd下输入pip install extract。第二种方法是下载压缩包,然后解压后,在解压文件夹按住键盘shift键+鼠标右键,选择打开命令窗口,然后python setup.py install安装…方法很多,可以网络一下。或者跟着一个在线教育培训机构,例如七月在线等等

Ⅳ 关于Python中的一段为Python脚本添加行号脚本

C语言有__LINE__来表示源代码的当前行号,经常在记录日志时使用。Python如何获取源代码的当前行号?
The C Language has the __LINE__ macro, which is wildly used in logging, presenting the current line of the source file. And how to get the current line of a Python source file?

exception输出的函数调用栈就是个典型的应用:
A typical example is the output of function call stack when an exception:

python代码
File "D:\workspace\Python\src\lang\lineno.py", line 19, in <mole>
afunc()
File "D:\workspace\Python\src\lang\lineno.py", line 15, in afunc
errmsg = 1/0
ZeroDivisionError: integer division or molo by zero

那么我们就从错误栈的输出入手,traceback模块中:
Now that, Let's begin with the output of an exception call stack, in the traceback mole:

python代码
def print_stack(f=None, limit=None, file=None):
"""Print a stack trace from its invocation point.

The optional 'f' argument can be used to specify an alternate
stack frame at which to start. The optional 'limit' and 'file'
arguments have the same meaning as for print_exception().
"""
if f is None:
try:
raise ZeroDivisionError
except ZeroDivisionError:
f = sys.exc_info()[2].tb_frame.f_back
print_list(extract_stack(f, limit), file)

def print_list(extracted_list, file=None):
"""Print the list of tuples as returned by extract_tb() or
extract_stack() as a formatted stack trace to the given file."""
if file is None:
file = sys.stderr
for filename, lineno, name, line in extracted_list:
_print(file,
' File "%s", line %d, in %s' % (filename,lineno,name))
if line:
_print(file, ' %s' % line.strip())

traceback模块构造一个ZeroDivisionError,并通过sys模块的exc_info()来获取运行时上下文。我们看到,所有的秘密都在tb_frame中,这是函数调用栈中的一个帧。
traceback constructs an ZeroDivisionError, and then call the exc_info() of the sys mole to get runtime context. There, all the secrets hide in the tb_frame, this is a frame of the function call stack.

对,就是这么简单!只要我们能找到调用栈frame对象即可获取到行号!因此,我们可以用同样的方法来达到目的,我们自定义一个lineno函数:
Yes, It's so easy! If only a frame object we get, we can get the line number! So we can have a similar implemetation to get what we want, defining a function named lineno:

python代码
import sys

def lineno():
frame = None
try:
raise ZeroDivisionError
except ZeroDivisionError:
frame = sys.exc_info()[2].tb_frame.f_back
return frame.f_lineno

def afunc():
# if error
print "I have a problem! And here is at Line: %s"%lineno()

是否有更方便的方法获取到frame对象?当然有!
Is there any other way, perhaps more convinient, to get a frame object? Of course YES!

python代码
def afunc():
# if error
print "I have a proble! And here is at Line: %s"%sys._getframe().f_lineno

类似地,通过frame对象,我们还可以获取到当前文件、当前函数等信息,就像C语音的__FILE__与__FUNCTION__一样。其实现方式,留给你们自己去发现。
Thanks to the frame object, similarly, we can also get current file and current function name, just like the __FILE__ and __FUNCTION__ macros in C. Debug the frame object, you will get the solutions.

Ⅵ python 提取有关键词的句子怎么做

高频词提取:
# !/usr/bin/python3
# coding:utf-8

import jieba.analyse

jieba.load_userdict('dict.txt') # dict.txt自定义词典

content = open('kw.txt', 'rb').read()
tags = jieba.analyse.extract_tags(content, topK=10) # topK 为高频词数量
print("\n".join(tags))

Ⅶ python十大必学模块是什么

这个不能一概而论的,据说python目前高达27万+个库,看你学习的方向必学模块也有不同,简单列举:

1、网络通用方面:

  • urllib-网络库

  • requests-网络库

  • pycurl– 网络库

  • httplib2– 网络库

  • RoboBrowser– 浏览网页

  • MechanicalSoup-一个与网站自动交互Python库

  • socket– 底层网络接口

    2、爬虫方面:

  • grab– 爬虫框架

  • scrapy– 网络爬虫框架,不支持Python3

  • pyspider–爬虫系统。

  • cola– 爬虫框架

  • portia– 可视化爬虫

  • 3、HTML/XML解析方面:

  • lxml– 高效HTML/ XML处理库

  • cssselect– 解析DOM树和CSS选择器。

  • pyquery– 解析DOM树和jQuery选择器。

  • html5lib– 根据WHATWG规范生成HTML/ XML文档的DOM

  • feedparser– 解析RSS/ATOM feeds。

  • MarkupSafe– 为XML/HTML/XHTML提供了安全转义的字符串。

  • xhtml2pdf– 将HTML/CSS转换为PDF。

  • untangle– XML文件转Python对象

  • 4、文件处理方面:

  • xpinyin– 将中国汉字转为拼音

  • tablib– 数据导出为XLS、CSV、JSON、等格式的模块

  • textract– 从文件中提取文本

  • messytables– 解析表格数据

  • rows– 常用数据接口

  • Office

  • python-docx– 读取,查询和修改docx文件

  • xlwt/xlrd– 从Excel文件读取写入数据和格式信息

  • PDF

  • Markdown

  • Python-Markdown– 一个用Python实现的John Gruber的Markdown。

Ⅷ 如何通过Python压缩解压缩zip文件

解压缩

importzipfile
importos
defun_zip(file_name):
"""unzipzipfile"""
zip_file=zipfile.ZipFile(file_name)
ifos.path.isdir(file_name+"_files"):
pass
else:
os.mkdir(file_name+"_files")
fornamesinzip_file.namelist():
zip_file.extract(names,file_name+"_files/")
zip_file.close()

打包

zipfile.ZipFile('xxx.zip','a/w/x').write('xxx.txt')

'w'以截断并写入新文件'a'以附加到现有文件,或'x'以专门创建和写入新文件。

Ⅸ scrapy的extract命令有何作用

大概意思就是你用css选择器选择了一个标签里的一个元素,用了extract()方法,返回的结果是那整个标签,用列表的方法返回

热点内容
安卓怎么恢复删除照片恢复软件 发布:2025-01-11 14:55:49 浏览:171
空调压缩机皮带打滑 发布:2025-01-11 14:55:10 浏览:61
授权轻松访问 发布:2025-01-11 14:51:50 浏览:406
大主宰脚本 发布:2025-01-11 14:40:56 浏览:826
ftp保存密码是灰色 发布:2025-01-11 14:00:07 浏览:261
压缩文件最好 发布:2025-01-11 13:59:58 浏览:649
有几家java培训机构 发布:2025-01-11 13:55:05 浏览:476
搭建个人服务器缺点 发布:2025-01-11 13:54:13 浏览:376
怎么用安卓的手机登录ios第五人格 发布:2025-01-11 13:44:11 浏览:769
登陆Ftp重输密码 发布:2025-01-11 13:40:12 浏览:335