Pyhton 3 学习笔记 2017.11.17
以上是我下载重新打包上传的,如果各位看官觉得自己弄比较麻烦,可以直接下载.
扯多了现在开始:"掌声""掌声""掌声""掌声""掌声""掌声""掌声"
最近逛网站看到一家安全软件公司securityxploded的网站上有很多工具免费下载.
200+免费软件哦,光想想都兴奋.
二话不说直接点进去下载,
第一个开始了,
下载速度不错,10几秒就下好.
然后第二个第三个.........到了第十几个的时候,开始乱了,各种重复和遗漏都来了.
真头疼点200多下不乱很难啊,忽然间灵机一动,最近在学Python,写个爬虫不就可以了吗,但是事实却是令人失望的,我水平有限,不会写.但是我肯定不能这么快认输,继续点这网页,忽然发现在下载标签里面有一个PAD Files的选项.
点进去一看,原来是给共享网站管理员用的共享列表文件,心想有戏,立即下载.
直接下载,几秒后下好,打开一看,235个对象,就是说235个文件,一个个复制粘贴吗?自己都觉得自己疯了.
苦思了一会儿,想到一个命令行的命令"dir /b>".
不管了边试边想,理解Win+R => cmd.,眨眼间生成了一个name.txt的文件,文件名都在里面了,但是这里有个操作,是需要把这个文件的名字从记事本上删除掉.
打开XML文件看一下发现有用的东西都在里面了.
软件名称:
软件简介:
下载地址:
好了,把它们的文件名弄出来了,接下来就是Python上场了,我的想法是先读取文件名文件,然后导入相应文件,提取里面的信息,然后汇总写入一个HTML文件,写成超链接然后用下载软件如*雷,*车,*旋风之类的批量下载.
时光飞速,成品出来了,
最后奉上的是我这个新手小白写的代码了:
# W*_*M coding:UTF-8 C*_*C # Please use Python 3 run this program thanks. from xml.dom import minidom # 操作XML的库,要操作XML当然要先导入了. New_File = open("Sofe_Ware.html", "w") # 先打开一个需要保存的文件,如果没有系统会自动创建. for f in open("name.txt"): # 逐行读取文件名称的文件内容. name = f.replace('\n', '') # 消除文件中的换行符号,这个情况困扰了我20分钟,一直抛出Error,不认真掌握基础知识的错. file = minidom.parse("./xml/%s" % name) # 打开XML文件,"./xml/"是代表当前目录下的文件夹. msg = file.documentElement # 以一个元素对象返回一个文档元素. Program_Name = msg.getElementsByTagName("Program_Name")[0] # 寻找Program_Name这个标签并获取这个整个标签内容. PN = Program_Name.childNodes[0].nodeValue # 获取Program_Name标签内的内容. print("软件名称:", PN) # 调试时候看的(装B用的.) Software_Msg = msg.getElementsByTagName("Char_Desc_2000")[0] # 寻找Char_Desc_2000这个标签并获取这个整个标签内容. SM = Software_Msg.childNodes[0].nodeValue # 获取Char_Desc_2000标签内的内容. print("软件介绍:", SM) # 调试时候看的(装B用的.) Primary_Download = msg.getElementsByTagName("Primary_Download_URL")[0] # 寻找Primary_Download_URL这个标签并获取这个整个标签内容. PD = Primary_Download.childNodes[0].nodeValue # 获取Char_Desc_2000标签内的内容. print("下载地址:", PD) # 调试时候看的(装B用的.) New_File.write("软件名称:<a href=""%s""> %s</a><br /><br />软件介绍: %s<br /><br /><br />" % (PD, PN, SM)) # 最后这个是写入文件了,高手们一看就知道这个写入内容是什么了,还有这段写入内容有好多地方可以化简,因为我是初学,所以请各位老师给我点提示,谢谢. # 我先解释一下给跟我一样的小白同学看看是什么意思吧. # 主要说得是<a href=""%s""> %s</a><br /><br />这一段,这是把我们读取出来的PD内容写成超链接的形式. # 软件介绍: %s<br /><br /><br />这一段,这里的<br />算是HTML代码中的的换行符吧. New_File.close() # 保存关闭文件.
写的不好请各位老师指点指点,谢谢观看.