文档库 最新最全的文档下载
当前位置:文档库 › framework-res.apk文件详解

framework-res.apk文件详解

framework-res.apk文件详解
framework-res.apk文件详解

首先需要反编译framework-res(在system/framework目录下)

这里提供一个很方便的反编译工具

assets这个目录就不多说了- -,不是音频就是图片

然后是res目录,这个要好好说一说:

anim文件夹(存放ROM动画效果控制文件)——***.xml

color(一目了然,这个文件夹存放的是ROM各位置的颜色控制代码)——***.xml drawable / drawable-***(ROM 的基本资源库,存放各种资源来供控制文件调用)——***.xml / **.png

layout / layout-***(ROM 层面布局控件,简单理解就是控制各个部位的所在位置,如各种图标)——***.xml

raw / raw-***(一般情况这些目录不需要动)——***.png / ***.ogg /***.html

values / values-***(各种语言包控件)——***.xml

xml / xml-**(全局控制文件,一般情况这些目录不需要动)——***.xml

AndroidManifest.xml 和 apktool.yml

AndroidManifest.xml 是每一个应用都需要的文件;

位于应用的根目录下,描述了程序包的一个全局变量;

包括暴露的应用组件(activities, services 等)和为每个组件的实现类;

什么样的数据可以操作,以及在什么地方运行;

▲ 一般情况下不需要动该文件

AndroidManifest.xml 的结构大纲:

文件根节点,描述了程序包的所有内容;

请求一个安全授权,必须被授予该权限,程序包才能正确的操作;

声明一个安全授权,用来限制哪些应用可以访问程序包内的组件和特有机制;

描述程序包内应用级别组件的根节点,该节点能够描述应用程序的全局和默认属性;

应用于用户交互的最主要机制,当一个应用运行的时候,用户看到的第一个屏幕就是 activity;

一个 IntentReceiver 可以让应用接收到一次数据变化和一次行为发

生的通知;

Service 是一个在后台任意时刻都可以运行的组件;

ContentProvider 组件是用来管理数据持久化及数据发布的,发布的数据可以被其他的应用访问;

apktool.yml 是 apktool 反编译时生成的一个配置文件,不需要动这个文件,重新编译时缺它不可;

anim 文件夹下即我们通常所说到的动画特效文件,在这里我通过表格的方式来说明(非专业解释,仅供参考)

详细介绍 res \ values目录

res \ values 目录结构和相关解释在№.2 中我们已经介绍了,那么下面来针对里面的文件进行介绍

这些属性我们在定制 ROM 时通常可以自定义,但是我们在修改的过程中不能轻易大动手脚,这里只简单介绍一下

▲ 因 ROM 不同,文件可能也会不同,以下仅供参考

arrays.xml

XML 解析定义和 utf-8 编码格式

根节点,即引用的资源,存在于根目录中

所定义的内容名称

*** 内容定义,这里我们看到的都是英文,在上级目录里的values-zh-rCN 里即中文翻译

代码后缀,使其之上代码生效

attrs.xml

attr name 是指 attr 属性对应的属性名,format 是指属性类型

enum name 枚举名称,valie 对于 enum name 的宏定义

属性后缀,使其之上代码生效

bools.xml(存放布尔值的 XML 资源)

false bool name 该目录下的布尔值名称,false \ true 相对应的布尔值

colors.xml(存放16进制颜色值的 XML 资源)

#8000 color name 可自定义元素的名称;#8000 对应元素的颜色代码

▲ 该代码中所对应的属性值存在于上级目录中的“ color ” 文件夹;自定义颜色部分代码:点击查看

dimens.xml(存放带计量单位的数量值 XML 资源)

** dip dimen name 对应元素的名称;** dip 度量值,即距离数值

drawables.xml

@ *** 所要定义颜色值的相关名称,@后即要对此执行该定义

ids.xml(用 XML 格式定义的资源唯一 ID)

item type 对应值必须是 id,只包含属性;name 即名称,拥有唯一的 ID

integers.xml(用 XML 格式定义的整数资源)

** integer name 定义元素的名称;** 必须是整数,定义对应元素的数值

plurals.xml

要定义的元素名称

%d *** 该定义值通常会影响到对应元素显示乱码问题

1 second ago 对应定义元素的项目数以及对应时间数值

定义后缀,使其之上的定义代码生效

public.xml

public type 类型定义;"attr" name 属性名称;

id=" ** "唯一的 ID定义

(同上)

strings.xml(这里存放的就是我们所熟悉的各程序的各组件名称定义)

** *** 要定义名称的元素名;** 该元素的定义名称

▲ 在上级目录的 values-zh-rCN 文件夹中有对应的中文翻译

styles.xml

样式定义后缀,使其之上代码生效

wmi文档

问题1:WMI 是什么,它能帮我做什么? Windows 管理规范(Windows Management Instrumentation)是一项核心的Windows 管理技术;用户可以使用WMI 管理本地和远程计算机。WMI 通过编程和脚本语言为日常管理提供了一条连续一致的途径。例如,用户可以: ?在远程计算机器上启动一个进程。 ?设定一个在特定日期和时间运行的进程。 ?远程启动计算机。 ?获得本地或远程计算机的已安装程序列表。 ?查询本地或远程计算机的Windows 事件日志。 WMI 中的“Instrumentation”特指WMI 可以获得关于计算机内部状态的信息,这与汽车仪表盘获得并显示引擎的状态信息非常类似。WMI 对磁盘、进程、和其他Windows 系统对象进行建模,从而实现“指示”功能。这些计算机系统对象采用类来建立模型,例如Win32_LogicalDisk 或Win32_Process;如您所料,Win32_LogicalDisk 类用于建立在计算机上安装的逻辑磁盘的模型,Win32_Process 类用于建立正在计算机上运行的任何进程的模型。这些类基于一个名为通用信息模型(Common Information Model,CIM)的可扩展架构。CIM 架构是分布式管理任务组(Distributed Management Task Force)的一个公开标准( https://www.wendangku.net/doc/486050727.html,). WMI 的功能还包括事件触发、远程调用、查询、查看、架构的用户扩展、指示等等。 想进一步了解WMI,请访问https://www.wendangku.net/doc/486050727.html,/library/default.asp并搜索关键词“About WMI”。 返回页首 问题2:WMI 适用于那些平台? WMI 适用于所有最新版本的Windows。WMI 附带在Windows Me、Windows 2000、Windows XP 和Windows Server 2003 之中。 对于Windows 98 和Windows NT 4.0,可以访问https://www.wendangku.net/doc/486050727.html,/downloads. 并搜索“Windows Management Instrumentation (WMI) CORE 1.5 (Windows 95/98/NT 4.0)”。 注意:在Windows NT 4.0 上安装并运行WMI 之前,需要首先安装Service Pack 4 或更高版本。 WMI 需要的其他软件包括: 1. Microsoft? Internet Explorer 5.0 或更高版本。 2. Windows Script Host(WSH)。Windows 2000、Windows XP、Windows Server 2003、和Windows Me 附 带的WSH,而不是Windows NT4 或Windows 98 附带的WSH。您可以从以下地址下载WSH https://www.wendangku.net/doc/486050727.html,/downloads. WSH 的最新版本——包括在Windows XP 和Windows Server 2003 之中——是WSH 5.6。 返回页首 问题3:如果WMI 向外界暴露特定的功能,我如何才能知道? MSDN 是了解WMI 及其功能的详细参考信息的最佳场所;请参考以下地址获取WMI 参考信息:https://www.wendangku.net/doc/486050727.html,/library/default.asp?url=/library/en-us/wmisdk/wmi/wmi_reference.asp. WMI 参考中包含了关于WMI 标准安装中大多数类、对象和API 的信息。注意:不属于操作系统一部分的WMI 提

Jsoup解析HTML

jsoup 简介 Java 程序在解析 HTML 文档时,相信大家都接触过 htmlparser 这个开源项目,我曾经在 IBM DW 上发表过两篇关于 htmlparser 的文章,分别是:从 HTML 中攫取你所需的信息和扩展 HTMLParser 对自定义标签的处理能力。但现在我已经不再使用 htmlparser 了,原因是 htmlparser 很少更新,但最重要的是有了jsoup 。 jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。 jsoup 的主要功能如下: 1. 从一个 URL,文件或字符串中解析 HTML; 2. 使用 DOM 或 CSS 选择器来查找、取出数据; 3. 可操作 HTML 元素、属性、文本; jsoup 是基于 MIT 协议发布的,可放心使用于商业项目。 jsoup 的主要类层次结构如图 1 所示: 图 1. jsoup 的类层次结构 接下来我们专门针对几种常见的应用场景举例说明 jsoup 是如何优雅的进行HTML 文档处理的。 回页首

文档输入 jsoup 可以从包括字符串、URL 地址以及本地文件来加载 HTML 文档,并生成Document 对象实例。 下面是相关代码: 清单1 // 直接从字符串中输入 HTML 文档 String html = " 开源中国社区 " + " 这里是 jsoup 项目的相关文章 "; Document doc = Jsoup.parse(html); // 从 URL 直接加载 HTML 文档 Document doc = Jsoup.connect("https://www.wendangku.net/doc/486050727.html,/").get(); String title = doc.title(); Document doc = Jsoup.connect("https://www.wendangku.net/doc/486050727.html,/") .data("query", "Java") // 请求参数 .userAgent("I ’ m jsoup") // 设置 User-Agent .cookie("auth", "token") // 设置 cookie .timeout(3000) // 设置连接超时时间 .post(); // 使用 POST 方法访问 URL // 从文件中加载 HTML 文档 File input = new File("D:/test.html"); Document doc = Jsoup.parse(input,"UTF-8","https://www.wendangku.net/doc/486050727.html,/"); 请大家注意最后一种 HTML 文档输入方式中的 parse 的第三个参数,为什么需要在这里指定一个网址呢(虽然可以不指定,如第一种方法)?因为 HTML 文档中会有很多例如链接、图片以及所引用的外部脚本、css 文件等,而第三个名为baseURL 的参数的意思就是当 HTML 文档使用相对路径方式引用外部文件时,jsoup 会自动为这些 URL 加上一个前缀,也就是这个 baseURL。 例如 开源软件 会被转换成 开源软件 。 回页首

利用wmic对Windows主机批量执行脚本

利用wmic对Windows主机批量执行脚本 2014年11月13日 AM 10:53 与类Unix操作系统相比较,Windows系统由于对字符界面的支持不完善,并没有与类Unix系统的shell可以相提并论的工具(cmd的命令行特性难用程度与 shell相比简直令人发指,虽然目前Windows推出所谓的PowerShell,但要跟上bash、korn shell等前辈还需要时间来沉淀)。一直以来,对于Windows进行批量管理大多依靠于图形界面,效率低下且可靠性不足。 其实Windows本身提供了WMI管理规范和接口,专用于支持命令行方式的系统管理,更推出wmic工具来给系统管理员使用,以下是百度百科对于wmic的介绍:WMIC扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门的WMI应用,例如SMS,或者使用WMI的脚本编程API,或者使用象CIM Studio之类的工具。如果不熟悉C++之类的编程语言或VBScript之类的脚本语言,或者不掌握WMI名称空间的基本知识,要用WMI管理系统是很困难的。WMIC改变了这种情况,为WMI名称空间提供了一个强大的、友好的命令行接口。 概念的介绍总是容易让读者云里雾里,以下试验将演示如何使用wmic以及Windows共享功能来对批量服务器执行一个离线安全扫描脚本并取回结果。 试验背景: 现需要对批量Windows Server服务器进行离线安全扫描,即登录到每一台服务器执行一个vbs脚本,脚本会生成扫描结果文件,然后将结果文件下载到本地。倘若服务器数量不多,那么一台台登录执行也就罢了,但当目标服务器数量达到一定数量后,再手工进行此操作,就成为一件繁琐重复的工作。有人说,懒惰是推动人类文明不断进步的源动力。所以为了偷懒,不,为了人类文明的进步,这个工作必须使用批量和自动化的工具来完成。 实现思路: 将此工作分解为以下步骤,逐一实现: 1、登录Windows Server服务器; 2、上传扫描脚本到目标服务器; 3、执行扫描脚本; 4、下载结果文件; 5、对其他服务器重复前4个步骤。 第1步的登录服务器,传统来说,肯定是使用远程桌面了,但如前面所说,图形界面的东西,要进行批量操作是很麻烦的。那自然要使用字符界面来进行登录了,再自然地想到telnet方式是最简便通用的协议。但现今所有负责任的系统或安全管理人员都会告诉你,想用telnet来连接我的服务器?门都没有!幸好wmic就提供了远程主机的管理接口,使用"wmic /node:IP地址 /user:帐号 /password:密码"的形式可以登录到远程主机执行wmic命令。第3步的执行脚本,其实与登录是同时进行的,此处结合第1、第3步,命令就是: wmic /node:IP地址 /user:帐号 /password:密码 process call create "cmd /c cmd命令或脚本" 第2和第4步,上传与下载,其实是同样的需求,如果开通了ftp之类的文件传输服务,自然简单。但当前环境并未开通ftp,所以考虑使用Windows的文件夹共享与网络映射来实现。首先在远端服务器使用wmic创建一个路径为c:\tempshare的共享目录,然后将其映射到本地的Z盘,再直接在Z盘上进行文件的读取。

网页数据抓取分析

1、抓取网页数据通过指定的URL,获得页面信息,进而对页面用DOM进行 NODE分析, 处理得到原始HTML数据,这样做的优势在于,处理某段数据的灵活性高,难点在节算法 需要优化,在页面HTML信息大时,算法不好,会影响处理效率。 2、htmlparser框架,对html页面处理的数据结构,HtmlParser采用了经典的Composite 模式,通过RemarkNode、TextNode、TagNode、AbstractNode和Tag来描述HTML页面 各元素。Htmlparser基本上能够满足垂直搜索引擎页面处理分析的需求,映射HTML标签,可方便获取标签内的HTML CODE。 Htmlparser官方介绍: htmlparser是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html。它能超高速解析html,而且不会出错。现在htmlparser最新版本为2.0。毫不夸张地说,htmlparser就是目前最好的html解析和分析 的工具。 3、nekohtml框架,nekohtml在容错性、性能等方面的口碑上比htmlparser好(包括htmlunit也用的是nekohtml),nokehtml类似XML解析原理,把html标签确析为dom, 对它们对应于DOM树中相应的元素进行处理。 NekoHTML官方介绍:NekoHTML是一个Java语言的HTML扫描器和标签补全器(tag balancer) ,使得程序能解析HTML文档并用标准的XML接口来访问其中的信息。这个解析 器能够扫描HTML文件并“修正”许多作者(人或机器)在编写HTML文档过程中常犯的错误。 NekoHTML能增补缺失的父元素、自动用结束标签关闭相应的元素,以及不匹配的内嵌元 素标签。NekoHTML的开发使用了Xerces Native Interface (XNI),后者是Xerces2的实现基础。由https://www.wendangku.net/doc/486050727.html,/整理

用 wmic 从命令行加入域的问题

用wmic 从命令行加入域的问题 用wmic 从命令行加入域的问题 -------------------------------------------------------------------------------- Silence2007-04-07, 23:03:29 在XP 下,用WMIC 命令可以实现将计算机加入域或工作组。WMIC 的功能非常丰富,下面是与域有关的部分内容。 1. 加入域 wmic computersystem where Name="%COMPUTERNAME%" call JoinDomainOrWorkgroup Name="d https://www.wendangku.net/doc/486050727.html," username="https://www.wendangku.net/doc/486050727.html,\username" password="password" FJoinOptions=1 注: %COMPUTERNAME% 系统环境变量,内容是计算机名。 FJoinOptions=1 表示首次加入域,若不指定username 和password,则表示加入/修改工作组。FJoinOptions=32 表示允许加入一个新域,即使该计算机已经加入到了某个域。 2、退出域 wmic computersystem where Name="%COMPUTERNAME%" call UnJoinDomainOrWorkgroup userna me="https://www.wendangku.net/doc/486050727.html,\username" password="password" 命令运行后会显示一个返回值,若值为零则表示成功。 我有上千台微机需要加入域,所以希望来个快捷的办法。这些天进行了多次试验,发现退出域命令1 00% 测试有效,而加入域命令却经常不成功,而且我一直没有发现什么规律。百思不得其解,特来论坛讨教。 测试环境:2000 Server + XP Pro SP2 -------------------------------------------------------------------------------- asap2007-04-08, 06:50:21 将FJoinOptions=3试试。2表示在server端创建computer account。没有试过Windows 2000 Server 下的自动加入;以前也是写的vbscript脚本这样作的;看MSDN上说这个的要求是这样的: Client Requires Windows Vista or Windows XP. Server Requires Windows Server "Longhorn" or Windows Server 2003. 也许这个就是问题所在?手动加入domain时,如果不成功时,也是需要在DC上建立computer账号的。 good luck! -------------------------------------------------------------------------------- G992007-04-08, 07:45:32 学习一下哈

基于WMIC和脚本实现对内网终端及设备的信息统计

基于WMIC和脚本实现对内网终端及设备的信息统计 摘要:随着电力企业信息化的不断深入发展,电力企业对信息化的依赖程度越 来越高,公司各种终端越来越多,给运维人员的设备台账治理带来了很大的难度。本文主要探讨利用wmic和脚本进行终端信息收集,提高运维人员的工作效率。 关键词:WMIC;脚本;终端信息 1 引言 建立详细的设备台账,是终端运维工作的基础,但随着电网的发展,公司各 类终端越来越多,给运维人员的设备台账治理带来了很大难度。微软Windows98 及以后的版本提供了WMIC功能,可快速查询系统软硬件及外接设备信息数据, 利用这一功能,使用宿主脚本及数据库技术,结合桌管系统策略下发功能,可提 高内外网终端及外接设备普查效率。 2 软件介绍 2.1 WMIC wmic是wmic命令行,作为WindowsXP的一部分发布的wmi命令行工具提 供一个到wmi接触结构的命令行接口。可以使用wmic.exex执行来自命令行的常 见wmi任务,包括浏览CIM和检查CIM类定义。 2.2 VB脚本 VBScript是Visual Basic Script的简称,即Visual Basic脚本语言,它是一种微 软环境下的轻量级的解释型语言,它使用COM组件、WMI、WSH、ADSI访问系 统中的元素,对系统进行管理。同时它又是asp动态网页默认的编程语言,配合asp内建对象和ADO对象,用户很快就能掌握访问数据库的asp动态网页开发技术。如图2-1所示。 图2-1 2.3 北信源主机监控审计与补丁分发系统 北信源主机监控审计与补丁分发系统,以终端管理为核心,形成集主机监控审计、补丁 管理、桌面应用管理、信息安全管理、终端行为管控等终端安全行为一体的管理体系,为企 业管理者提供终端多位一体、同意管理的解决方案。 3 处理过程 3.1 前期准备 1)根据工作任务要求,收集合理的统计字段。 2)利用微软操作系统wbemtest工具在wmic中寻找相应的类别及对象,对相似相近的类 别 对象,根据要求进行合理的取舍。 3)根据确定的字段,在SQL Server数据库(或任何支持网络的关系型数据库)建立终端 计算机及外接设备数据表,并设置合理的字段属性。 3.2 编制脚本 1)编制并测试数据收集上报的宿主脚本程序,宿主脚本通过调用操作系统wmic管理功能,获取本机软硬件及外接设备数据后立刻上传服务器。 2)为更好的支持数据库,应采用VBScript或JavaScript脚本。 3)为最大化减少普查工作对终端用户的影响,宿主脚本或批处理在工作期间应以静默方 式运行。 3.3 下发策略 1)上传脚本至桌管系统,为确保数据库用户名、密码、ip等连接参数安全,不应该将明 文用户、密码、ip等变量直接写入脚本中,因为终端用户通过查看和截留脚本,可获取服务 器ip、端口、用户名、密码,采用加密的策略参数传递可以很好的解决这一安全性问题。

基于内容相似度的网页正文提取

—102 — 基于内容相似度的网页正文提取 王 利1,刘宗田1,王燕华2,廖 涛1 (1. 上海大学计算机科学与工程学院,上海 200072;2. 上海海洋大学信息学院,上海 201306) 摘 要:提出一种将复杂的网页脚本进行简化并映射成一棵易于操作的树型结构的方法。该方法不依赖于DOM 树,无须用HTMLparser 包进行解析,而是利用文本相似度计算方法,通过计算树节点中文本内容与各级标题的相似度判定小块文本信息的有用性,由此进行网页清洗与正文抽取,获得网页文本信息,实验结果表明,该方法对正文抽取具有较高的通用性与准确率。 关键词:网页正文抽取;网页映射;网页清洗;文本相似度 Web Page Main Text Extraction Based on Content Similarity WANG Li 1, LIU Zong-tian 1, WANG Yan-hua 2, LIAO Tao 1 (1. School of Computer Science and Engineering, Shanghai University, Shanghai 200072; 2. School of Information Technology, Shanghai Fisheries University, Shanghai 201306) 【Abstract 】This paper proposes a method of simplifying complex Web page script and mapping it into tree structure easy to operate. It does not depend on DOM tree, and does not need utilize htmlparser bag to parse. By calculating text similarity, it calculates the similarity between the content of tree node and headings of different levels to determine the usefulness of the text information, cleans the Web page and extracts the content information. Experimental results show that the method has better universal property and accuracy rate in main text extraction. 【Key words 】Web page main text extraction; Web page mapping; Web page cleaning; text similarity 计 算 机 工 程 Computer Engineering 第36卷 第6期 Vol.36 No.6 2010年3月 March 2010 ·软件技术与数据库· 文章编号:1000—3428(2010)06—0102—03 文献标识码:A 中图分类号:TP393 1 概述 随着Internet 的飞速发展,网络上的信息呈爆炸式增长。 网页己经成为Internet 上最重要的信息资源。各种网页为人们提供了大量可供借鉴或参考的信息,成为人们日常工作和生活必不可少的一部分。然而,网页上的信息经常包含大量的噪声,如广告链接、导航条、版权信息等非网页主题信息的内容,页面所要表达的主要信息经常被隐藏在无关的内容和结构中,限制了Web 信息的可利用性。本文主要对网页上的这些噪声进行滤除,并抽取网页正文信息,即网页清洗。它是Web 文本分类、聚类、文本摘要等文本信息处理的基础,网页正文抽取的效果直接影响到文本信息处理的效果。 本文的方法首先抽取出HTML 页面中的title 及各级标题,再对网页进行标准化预处理,然后建立一种新的树型结构,HTML 中的所有正文信息都包含在这棵树的节点中。利用这种树型结构可以方便地清洗网页中的噪声、抽取出网页中的正文信息。在抽取网页正文信息时,较大的文本块根据文本的长度极易抽取出,而对于只有小文本块的节点,由于页面中的title 及各级标题高度概括了该网页的主要内容,因此可以根据各节点内容与title 、各级标题的相似度来判定该节点的信息文本是否为有用文本,只要该小块文本与title 或某个子标题的相似度大于设定阈值,就判定其为有用信息。 2 相关工作 虽然网页正文提取是Web 文本挖掘中的一个重要问题, 但相关研究并不多。目前对网页进行噪声过滤与信息自动抽取的方法主要有两大类:(1)针对单一页面进行处理。根据所处理页面的内容特征、可视信息等应用一些启发性规则去除页面的噪音,抽取出页面内容。这类方法对每一个待处理的网页进行同样的处理,对于抽取通过模板产生的网页集效率较低。(2)针对同一站点中页面的一般模式进行处理。这种方法是基于一个或多个网站中的页面集进行模板检测的,但局限于由同一个模板生成的网页集,直接影响清洗的自适应性。 文献[1]的研究仅限于某些特定站点,在这些站点中根据合并不同页面生成的DOM 树来标记页面中哪些是有用信息哪些是噪声,并通过这些标记达到页面清洗的目的。文献[2]根据HTML 标签生成树,通过分析同一网站下网页之间模板的相似性来识别数据区域。文献[3]基于DOM 规范,提出了基于语义信息的STU-DOM 树模型,将HTML 文档转换为STU-DOM 树,并对其进行基于结构的过滤和基于语义的剪枝,完成了对网页主题信息的抽取。文献[4]采用基于标记窗的方法并利用Levenshtein Distance 公式计算标记窗中字符串与标题词之间的距离,从而判断该字符串是否为正文信息,该方法容易导致很多噪声无法滤除。 通过分析可知,现有的网页清洗方法大多基于DOM 树并用HTMLparser 程序包[5]对其进行解析,这种方法效率不高,而且依赖于第三方包。对此本文提出了一种简单的树型结构,在这棵树中保存了正文信息,同时消除了一些无用信息,并对各节点进行了简化,带来了操作上极大的便利。另外,在这棵树中可以通过深度搜索子节点来消除传统方法中不能处理网页正文部分被存放在多个td 中的情况以及不能处 基金项目:国家自然科学基金资助项目(60575035, 60975033);上海市重点学科建设基金资助项目(J50103);上海大学研究生创新基金资助项目(SHUCX092162) 作者简介:王 利(1984-),男,硕士研究生,主研方向:文本挖掘,事件本体;刘宗田,教授、博士生导师;王燕华,硕士研究生;廖 涛,博士研究生 收稿日期:2009-08-10 E-mail :wonglee07@https://www.wendangku.net/doc/486050727.html,

python抓取网页数据的常见方法

https://www.wendangku.net/doc/486050727.html, python抓取网页数据的常见方法 很多时候爬虫去抓取数据,其实更多是模拟的人操作,只不过面向网页,我们看到的是html在CSS样式辅助下呈现的样子,但爬虫面对的是带着各类标签的html。下面介绍python抓取网页数据的常见方法。 一、Urllib抓取网页数据 Urllib是python内置的HTTP请求库 包括以下模块:urllib.request 请求模块、urllib.error 异常处理模块、urllib.parse url解析模块、urllib.robotparser robots.txt解析模块urlopen 关于urllib.request.urlopen参数的介绍: urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None) url参数的使用 先写一个简单的例子:

https://www.wendangku.net/doc/486050727.html, import urllib.request response = urllib.request.urlopen(' print(response.read().decode('utf-8')) urlopen一般常用的有三个参数,它的参数如下: urllib.requeset.urlopen(url,data,timeout) response.read()可以获取到网页的内容,如果没有read(),将返回如下内容 data参数的使用 上述的例子是通过请求百度的get请求获得百度,下面使用urllib的post请求 这里通过https://www.wendangku.net/doc/486050727.html,/post网站演示(该网站可以作为练习使用urllib的一个站点使用,可以 模拟各种请求操作)。 import urllib.parse import urllib.request data = bytes(urllib.parse.urlencode({'word': 'hello'}), encoding='utf8')

Wmic使用指南

14.Wmic使用指南 BIOS –基本输入/输出服务(BIOS) 管理 ::查看bios版本型号 wmic bios get Manufacturer,Name COMPUTERSYSTEM –计算机系统管理 ::查看系统启动选项,boot的内容 wmic COMPUTERSYSTEM get SystemStartupOptions ::查看工作组/域 wmic computersystem get domain ::更改计算机名abc为123 wmic computers ystem where “name=’abc’” call rename 123 ::更改工作组google为MyGroup wmic computersystem where “name=’google’” call joindomainorworkgroup “”,”",”MyGroup”,1 CPU –CPU 管理 ::查看cpu型号 wmic cpu get name DATAFILE –DataFile 管理

::查找e盘下test目录(不包括子目录)下的文件 wmic d atafile where “drive=’e:’ and path=’\\test\\’ and FileName=’cc’ and Extension=’cmd’” list ::查找e盘下所有目录和子目录下的文件,且文件大小大于1K wmic datafile where “drive=’e:’and FileName=’cc’and Extension=’cmd’and FileSize>’1000′”list ::删除e盘下文件大小大于10M的.cmd文件 wmic datafile where “drive=’e:’and Extension=’cmd’and FileSize>’′”call delete ::删除e盘下test目录(不包括子目录)下的非.cmd文件 wmic datafile where “drive=’e:’ and Extension<>’cmd’ and path=’test’” call delete ::复制e盘下test目录(不包括子目录)下的文件到e:\,并改名为wmic datafile where “drive=’e:’ and path=’\\test\\’ and FileName=’cc’ and Extension=’cmd’” call copy “e:\” ::改名c:\为c:\ wmic datafile “c:\\” call rename c:\ ::查找h盘下目录含有test,文件名含有perl,后缀为txt的文件 wmic datafile where “drive=’h:’ and extension=’txt’ and path like ‘%\\test\\%’ and filename like ‘%perl%’” get name DESKTOPMONITOR –监视器管理

WMIC详解

一、什么是WMIC? WMIC是扩展WMI(Windows Management Instrumentation,Windows管理规范),提供了从命令行接口和批命令脚本执行系统管理的支持。在WMIC出现之前,如果要管理WMI系统,必须使用一些专门的WMI应用,比如SMS,或者使用WMI的脚本编程API,或者使用象CIM Studio之类的工具。如果不熟悉C++之类的编程语言或VBScript之类的脚本语言,或者不掌握WMI名称空间的基本知识,要使用WMI管理系统是很困难的。WMIC改变了这种情况,为WMI名称空间提供了一个强大的、友好的命令行接口。 本文将主要介绍我在使用过程中的一些经验,本着实用主义的原则,过多的概念性的东西我就不多介绍了,在用到的时候我再进行一些解释。 和上面的官方定义比起来,还有一个更好理解的解释:WMIC,是一款命令行管理工具。使用WMIC,我们不但可以管理本地计算机,而且还可以管理同一Windows域内的所有远程计算机(需要必要的权限),而被管理的远程计算机不必事先安装WMIC,只需要支持WMI即可。WMIC有一个能够分析、解释和执行从命令行接收的别名(Alias)的引擎,它是一个可执行文件,名为WMIC.exe,这个文件通常位于“c:\windows\system32\wbem”文件夹中(支持WinXP和Win2003系统)。这样就比较好理解了吧,可以使用WMI管理远程计算机,是不是非常有吸引力呀! 二、WMIC能做什么? 可以使用WMIC实现如下的管理任务: 1、本地计算机管理 2、远程单个计算机管理 3、远程多个计算机管理 4、使用远程会话的计算机管理(如Telnet) 5、使用管理脚本的自动管理 三、简单的使用实例 1、运行WMIC 打开“开始”-“运行”栏,输入“WMIC”就可以启动wmic了,如图1。第一次运行时,会显示WMIC 正在安装,请稍等。几秒钟后就会出现如图2所示的命令提示符了。 2、初试WMIC下的命令 在窗口下输入●process●执行看看,结果如图3所示,列出了正在运行的进程和调用进程的路径。当然了,我们也可以输入●process list brief●来查看更详细的信息,比如进程名称、ID、优先级等。更重要的是,对于现在有些可以在任务管理器里隐藏进程的木马,要想在wmic里隐藏,可就没那么容易了,它会成为你查杀木马的好帮手。 现在只是知道了路径,如果怀疑某一进程,想查看它的详细信息又该怎么办呢?那输入●process name=‘jqs.exe’list full●就可以了,jqs是我安装java后新增加的一个进程,大家在测试时也可以选用别的,如图4。我们还可以使用以下命令来进程:●process where name=’jqs.exe’delete●,回车后就会提示我们是否删除,如图5。这里将delete换成“call terminate”也可以达到同样的效果。 在wmic下如何查看BIOS信息呢?我们输入●bios list full●,是使用的命令吧,不用重启电脑就可以知道你现在使用的电脑的BIOS信息了,如图6。 除此之外,wmic还有停止、暂停和运行服务的功能:启动服务startservice,停止服务stopservice,暂停服务pauseservice。具体的命令使用格式就是: ●Service where caption=”windows time” call stopservice●--停止服务 ●Service where caption=”windows time” call startservice●--启动服务 ●Service where name=”w32time” call stopservice●--停止服务,注意name和caption的

python爬虫实战

python爬虫实战,多线程爬取京东jd html页面:无需登录的网 站的爬虫实战 2014-12-02 20:04:31 标签:网站爬虫python import 版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。 【前言】 【需求说明】 以京东为示例,爬取页面的,获取页面中得数据:记录到data.txt;获取页面中得图片,保存下来。 1、list的url如下 2、商品详情页的url如下: 【技术说明】

【代码逻辑说明】 1、run(获取最终要的结果) 2、parseListpageurl:返回list的总共的页面数量 3、judgelist:判断该list是否已经爬取完毕了,第一个list中的所有url、最后list 的所有url都爬取完毕了,那么久说明list的所有page爬取完毕了(实际上是一种弱校验) 4、getfinalurl_content:如果list没爬取完毕,每个list爬取,解析list中得每个html (判断html是否爬取过),获得内容和img 【坑说明】 1、需要设置超时时间,和重试,否则爬取一个url卡住的时候,整个线程都悲剧了。 2、有编码的坑,如果页面是gb2312的编码,需要转换为utf-8的编码: httprestmp.decode('gbk').encode('utf-8') 3、parser.feed的内容,如果存在一些特殊字符,可能需要替换,否则解析出来会莫名不对

4、图片保存,根据url获取前面两个数字,保存。以免一个目录下保存了过多的图片。【执行结果】 1、console输出 2、data.txt存储解析出来的内容 3、judegurl.txt(保存已经爬取过的url) 4、图片(下载的图片) 【代码详情】

VTS安装&使用说明

SUNvts的安装和使用1.概述 1.1什么是SUNvts Sunvts是sun Validation Test Suite的缩写。它是sun的一个全面的硬件测试工具,SUNvts通过校验sun平台上的设备和硬件控制器的连通性和功能性来检测硬件是否正常。 1.2SUNvts支持的测试※CD DVD Test(cddvdtest)※CPU Test(cputest)※Disk and Floppy Drives Test(disktest)※Data Translation Look-aside Buffer(dtlbtest)※Floating Point Unit Test(fputest)※Network Hardware Test(nettest)※Ethernet Loopback Test(netlbtest)※Physical Memory Test(pmemtest)※Serial Port Test(serialtest)※System Test(systest)※Universal Serial Board Test(usbtest)※Virtual Memory Test(vmemtest)注:SUNvts提供了GUI和tty两种模式来进行状态配置和环境的监测,具体会在后面的介绍中进行详细的描述。 2.安装SUNvts及补丁2.1安装SUNvts SUNvts包及相关文档的下载地址:[url]https://www.wendangku.net/doc/486050727.html,/oem/products/vts/index.html[/url]。将下载的包ftp到主机中。本例中将SUNvts传到了/opt/sun下。(本例是以5.1版为例)root@nz86#cd/opt root@nz86#cd sun root@nz86#ls SUNVTS bin root@nz86#cd SUNVTS root@nz86#ls 5.1 root@nz86#cd 5.1 root@nz86#ls README SUNVTS_5.TGZ root@nz86#gunzip*.TGZ root@nz86#ls README SUNVTS_5.tar root@nz86#tar xf*.tar root@nz86#ls README SUNVTS_5.tar SunVTS-5.1 root@nz86#cd SunVTS* root@nz86#ls 8SUNWvts SUNWvtsmn SUNWvtsx sunvts5.1_new.html root@nz86#cd8

批处理中很有用的命令 WMIC

批处理中很有用的命令WMIC 最典型的用法 通过命令行中的一些内容查找程序 wmic process where"( (CommandLine LIKE '%_notepad_%') AND NOT(CommandLine LIKE '%_wmic_%' ) )" ?为了防止有'%notepad%'这样的环境变量, 所以使用了'%_notepad_%'这样的查询语法, 一般情况下, 直接使用'%notepad%'也是可以的. ?另外, 查询条件中LIKE操作符是不区分字符串的大小写的. 通过命令行中的一些内容结束程序 wmic process where"( (CommandLine LIKE '%_notepad_%') AND NOT(CommandLine LIKE '%_wmic_%' ) )"delete 参考 ?MSDN: ?Microsoft TechNet wmic 获取硬盘固定分区盘符: wmic logicaldisk where"drivetype=3"get name wmic 获取硬盘各分区文件系统以及可用空间: wmic logicaldisk where"drivetype=3"get name,filesystem,freespace wmic 获取进程名称以及可执行路径: wmic process get name,executablepath wmic 删除指定进程(根据进程名称): wmic process where name="qq.exe" call terminate

或者用 wmic process where name="qq.exe"delete wmic 删除指定进程(根据进程PID): wmic process where pid="123"delete wmic 创建新进程 wmic process call create "C:\Program Files\Tencent\QQ\QQ.exe" 在远程机器上创建新进程: wmic /node:192.168.1.10/user:administrator /password:123456process call create cmd.exe 关闭本地计算机 wmic process call create shutdown.exe 重启远程计算机 wmic /node:192.168.1.10/user:administrator /password:123456process call create "shutdown.exe -r -f -m" 更改计算机名称 wmic computersystem where"caption='%ComputerName%'" call rename newcomputername 更改帐户名 wmic USERACCOUNT where"name='%UserName%'" call rename newUserName wmic 结束可疑进程(根据进程的启动路径) wmic process where"name='explorer.exe' and executablepath<>'%SystemDrive%\\windows\\explorer.exe'"delete wmic 获取物理内存 wmic memlogical get TotalPhysicalMemory|find /i /v "t" wmic 获取文件的创建、访问、修改时间 @echo off wmic datafile where name^="c:\\windows\\system32\\notepad.exe"get CreationDate^,LastAccessed^,LastModified wmic 全盘搜索某文件并获取该文件所在目录 wmic datafile where"FileName='qq' and extension='exe'"get drive,path for/f "skip=1 tokens=1*"%i in('wmic datafile where "FileName='qq'

相关文档