‘壹’ python给产品批量设置产品标签怎么做
批量做的话,可以用数据库导入的方法添加标签内容,只需要做好第一个,然后只直接点击打印预览就能出来所有的批量标签了
‘贰’ Python beautifulsoup 获取标签中的值 怎么获取
使用beautifulsoup的方法如下:
importurllib
url=连接
content=urllib.urlopen(url).read()
soup=BeautifulSoup(content)
tags1=soup.findAll('tr',{class:evenright})
tags2=soup.findAll('tr',{class:oddright})
上面的就是利用beautifulsoup写的代码;
要取出网页中class 为even right 的所有tr和所有class为odd right的tr;
所有tr取出之后就可以打印出它的内容,就可以获取值了。
‘叁’ python查找是否存在某个标签
book.p.one.get("age",None),如果存在age的值get会返回其值,如果不存在,则返回None。然后加一个判断,就可以知道有没有age了。
还可以直接用has_key函数来确定是否存在某个键值。
‘肆’ python获取指定标签中的内容
你好:
请看下面代码:
#-*-coding:utf-8-*-
frombs4importBeautifulSoup
html='''<dict>
<key>LogType</key>
<string>Default</string>
<key>Message</key>
<string>测试场景:订餐提交页面</string>
<string>Loopin:2rTime:0.266s</string>
<key>Timestamp</key>
<date>2014-06-06T12:16:24Z</date>
<key>Type</key>
<integer>1</integer>
</dict>'''
soup=BeautifulSoup(html)
trs=soup.findAll("string")
length=len(trs)
arr=[]
foriinrange(length):
printtrs[i].contents
需要安装BeautifulSoup,代码很容易懂的!
‘伍’ python 读取dicom tag 结果为空值
可能出现了中文乱码的问题。
DICOM全称为Digital Imaging and Communications in Medicine,即医学数字成像和通信标准。本文中读取的CT图像就是使用DICOM标准存储的。其实不只CT图像,大部分临床影像都被存储为DICOM格式,如MR与PET图像。DICOM文件中除了包含有影像数据外,还囊括了大量机器,患者信息。这些信息被存储在一个个tags or attributes之下。Pydicom包为我们提供了非常简单易用的方法来读取这些文件。
Python 由 Guido van Rossum 于 1989 年年底出于某种娱乐目的而开发, Python 语言是基于 ABC 教学语言的,而 ABC 这种语言非常强大,是专门为非专业程序员设计的。但 ABC 语言并没有获得广泛的应用, Guido 认为是非开放造成的。
Python 的“出身”部分影响了它的流行,Python 上手非常简单,它的语法非常像自然语言,对非软件专业人士而言,选择 Python 的成本最低,因此某些医学甚至艺术专业背景的人,往往会选择 Python 作为编程语言。
‘陆’ 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 beautifulsoup 获取标签中的值 怎么获取
age = soup.find(attrs={"class":"age"}) #你这里find只要一个attrs参数不会报错。
if age == None: #简单点可以用 if not age:
print u'没有找到'
else:
soup.find(attrs={"class":"name"})
#否则用findAll找出所有具有这个class的tr
tr = html.find("tr", attrs={"class":"show_name"})
tds = tr.findAll("td")
for td in tds:
print td.string # 或许不是string属性,你可以用dir(td)看看有哪些可用的。
(7)pythontags扩展阅读:
1、如果是函数定义中参数前的*表示的是将调用时的多个参数放入元组中,**则表示将调用函数时的关键字参数放入一个字典中。
1)如定义以下函数:
def func(*args):print(args)
当用func(1,2,3)调用函数时,参数args就是元组(1,2,3)
2)如定义以下函数:
def func(**args):print(args)
当用func(a=1,b=2)调用函数时,参数args将会是字典{'a':1,'b':2}
学python的同时一定会接触到其他技术,毕竟光会python这门语言是不够的,要看用它来做什么。比如说用 python做爬虫,就必须接触到html, http等知识。
python是现在最火的数据分析工具语言python的进阶的路线是数据清洗,爬虫,数据容器,之后是卷积,线性分析,和机器学习,区块连,金融方面的量化等高端进阶。
‘捌’ 如何用Python提取网页标签中的文本信息
提供两种思路 仅供参考:
一、使用内置的正则表达式
from bs4 import BeautifulSoup
html = ("<div class="question">
"
"<span><a class="normal" name="question-2c26d7bd-90c1-415a-b881-2c560414340b">1、</a></span> 以下哪条不是VRRP双主可能的原因
"
"</div>")
soup = BeautifulSoup(html,"html.parser")
text = soup.get_text()
print(text)
‘玖’ Python中变量名是标签,指向一块内存,函数名是不是也是这个道理
是的。Python里应该大多数都是标签,指向一块内存的。比如说我定义一个a函数,单独输入函数名后也可以发现它是一个标签,指向了一块内存<function a at 0x041CC6A8>。
>>> def a():
pass
>>> a
<function a at 0x041CC6A8>
‘拾’ 如何用python为一个文章打标签
所以说你真的就把pandas 当读取数据的工具了吗..
增加了一列is_tobacco 作为你说的标记
filter_query 返回含有这些词的列表 效率有一定提升
其次你可以分割后用 multiprocessing 执行 这个加速起来不止一点半点
import pandas as pd
word = pd.read_table('test.txt', encoding = 'utf-8', names = ['query'])
def signquery(word):
tobacco = [u'烟', u'白沙', u'黄金叶', u'利群', u'南京九五', u'黄鹤楼软', u'黄鹤楼硬', u'娇子', u'钻石荷花', u'玉溪', u'七匹狼尚品', u'七匹狼软灰']
word['is_tobacco'] = word['query'].apply(lambda name:name in tobacco)
return word
def filter_query(word):
tobacco = [u'烟', u'白沙', u'黄金叶', u'利群', u'南京九五', u'黄鹤楼软', u'黄鹤楼硬', u'娇子', u'钻石荷花', u'玉溪', u'七匹狼尚品', u'七匹狼软灰']
return word[word['query'].apply(lambda name:name in tobacco)]['query'].to_dict().values()
result = filter_query(word)
print result