更多>>关于我们
西安鲲之鹏网络信息技术有限公司从2010年开始专注于Web(网站)数据抓取领域。致力于为广大中国客户提供准确、快捷的数据采集相关服务。我们采用分布式系统架构,日采集网页数千万。我们拥有海量稳定高匿HTTP代理IP地址池,可以有效获取互联网任何公开可见信息。
您只需告诉我们您想抓取的网站是什么,您感兴趣的字段有哪些,你需要的数据是哪种格式,我们将为您做所有的工作,最后把数据(或程序)交付给你。
数据的格式可以是CSV、JSON、XML、ACCESS、SQLITE、MSSQL、MYSQL等等。
更多>>技术文章
如何使抓取的HTML规范化
发布时间:2011-05-11
在数据采集时,处理不规范的HTML页面是件令人头疼的事。因为不规范的HTML页面往往会引起xpath解析失败,造成得不到正确的数据。
了解Firebug的人都知道,它的HTML视图下有一个巧妙的功能,能够自动修复不规范的HTML,以规范的形式展现。
例如,如下的一个不规范的HTML页面:
<table>
<tr>
<td>name
<td>age
<tr>
<td>redice
<td>25
</table>
我们看一下它在Firebug下的显示内容:
有没有能实现类似Firebug这种规范化HTML的Python库呢?
有。经过查找、测试,最终发现PyTidyLib库可以很好地实现这个功能。
下面是PyTidyLib库的一个测试:
>>> html = open('c:/html_invalid.html').read()
>>> print html
<table>
<tr>
<td>name
<td>age
<tr>
<td>redice
<td>25
</table>
>>> from tidylib import tidy_document
>>> document, errors = tidy_document(html)
>>> print document
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<table>
<tr>
<td>
name
</td>
<td>
age
</td>
</tr>
<tr>
<td>
redice
</td>
<td>
25
</td>
</tr>
</table>
</body>
</html>
特别说明:本文旨在技术交流,请勿将涉及的技术用于非法用途,否则一切后果自负。如果您觉得我们侵犯了您的合法权益,请联系我们予以处理。
☹ Disqus被Qiang了,之前所有的评论内容都看不到了。如果您有爬虫相关技术方面的问题,欢迎发到我们的问答平台:http://spider.site-digger.com/