网站采集程序编写技巧

来源:互联网 发布:华泰大智慧软件下载 编辑:程序博客网 时间:2024/06/05 19:50

采集是中国互联网高频操作,如果你不会编程,可以用"火车头"这样的软件,这个软件也是需要学习成本的,可能会有点复杂。程序员来做当然是自己编程,我一般用python写爬虫程序,偶尔用javascript,我以前见过一个码农用c++写,把网页clean/tidy之后强行用libxml构建document tree来解析,相当有想象力,估计是在某个搜索引擎工作。

  • 临时性采集某个页面 
    直接用firefox打开网页,注入jquery,编写各种css选择器,然后用document.write来把结果写到网页上,复制出来

  • 采集确定数据 比如采集淘宝商品页上的价格信息,这种单一数据,用正则表达式就行

  • 采集循环数据 
    这是指采集列表页,多条url,这种情况用BeautifulSoup 中文网页编码很杂,数据多半都不规范,经常会抛出异常,程序特别需要注意容错

  • 数据的存储 我先后用过文本文件,sqlite,mysql存放数据。我推荐使用直接mysql,这样后期迁移数据比较省事

  • 采集程序的组织 如果你只需要采集标题和正文,哪很简单,但是大部分采集都需要parse采集到的页面,转化成自己的数据库字段。但是由于网页结构很不规范,解析程序容易出现错误导致程序退出,所以采集程序最好分成2部分:

    1. 采集程序只干一件事情: 采集到 网页内容直接入库,数据表只包括2个字段:url,html
    2. 另外写一个解析程序: 从数据库中取出刚才存好的内容,解析提取你要的字段

参考

  • BeautifulSoup 中文手册
0 0