当前访客身份:游客 [ 登录 | 加入 OSCHINA ]

代码分享

当前位置:
代码分享 » Python  » 网络编程
fc_lamp

百度文章爬虫(再次改进)

fc_lamp 发布于 2011年12月12日 13时, 7评/7668阅
分享到: 
收藏 +0
1
使用实例
#coding:gb2312
import spider,time#导入模块

if __name__ == '__main__':

    st = time.time()
    print('解析中......')

    spider = spider.SpiderBaiDu()

   #若要登陆加上:spider.LoginBaiDu(xxxx,xxxxx)

    spider.created_db(r"D:\test2.db3")
    url = 'http://hi.baidu.com/xxxxx/xxxxxxx.html'#起始URL
    try:
        spider.parse_html(url,debug=True)
    except Exception as e:
        print('Error:',e)

    et = time.time()
    c = et - st
    print('程序运行耗时:%0.2fs'%c)
    print('总共爬取了 %d 篇文章'%spider.total)

注 1 以上代码中我 把SpiderBaiDu()类放一个单独模块文件中。
    2 此爬虫不是万能的(
#特别说明:由于百度文章的匹配规则时有变化 )。
   3 慎用爬虫!

另注,1  详细代码参看:
http://fc-lamp.blog.163.com/blog/static/1745666872011828680944/

        2 
python模拟登陆163邮箱并获取通讯录: http://fc-lamp.blog.163.com/blog/static/1745666872011102111540508/
标签: 百度

代码片段(2) [全屏查看所有代码]

1. [图片] 过程.jpg    

2. [图片] 数据文件.jpg    



开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»

发表评论 回到顶部 网友评论(7)

  • 1楼:fc_lamp 发表于 2011-12-12 13:52 回复此评论
    谢谢批正~
  • 2楼:开源中国射线科科长 发表于 2011-12-15 23:54 回复此评论
    说下你大概的功能吧 我用java也在写词法分析器 中文分词是用的别人的 效果初具成效 很好奇你的spider都有哪些功能 一旦进入词法检索和信息归纳层面 我就郁闷了 
  • 3楼:aforbe 发表于 2011-12-16 09:02 回复此评论

    引用来自“虚空假面”的评论

    说下你大概的功能吧 我用java也在写词法分析器 中文分词是用的别人的 效果初具成效 很好奇你的spider都有哪些功能 一旦进入词法检索和信息归纳层面 我就郁闷了 
    为什么不去看他的源码呢?简单看了一下,只是简单的正则抓取,没有作分词。
    同时建议楼主可以使用lxml来解析(正则虽然快一些但是容易受到页面代码结构影响),如果还想做得更好的话。使用多线程吧。
    希望看到下次的更新。
  • 4楼:fc_lamp 发表于 2011-12-16 09:29 回复此评论

    引用来自“虚空假面”的评论

    说下你大概的功能吧 我用java也在写词法分析器 中文分词是用的别人的 效果初具成效 很好奇你的spider都有哪些功能 一旦进入词法检索和信息归纳层面 我就郁闷了 
    我没有做的像你说的那么高级~就像“aforbe”说的:只是简单正则匹配~
  • 5楼:fc_lamp 发表于 2011-12-16 09:29 回复此评论

    引用来自“aforbe”的评论

    引用来自“虚空假面”的评论

    说下你大概的功能吧 我用java也在写词法分析器 中文分词是用的别人的 效果初具成效 很好奇你的spider都有哪些功能 一旦进入词法检索和信息归纳层面 我就郁闷了 
    为什么不去看他的源码呢?简单看了一下,只是简单的正则抓取,没有作分词。
    同时建议楼主可以使用lxml来解析(正则虽然快一些但是容易受到页面代码结构影响),如果还想做得更好的话。使用多线程吧。
    希望看到下次的更新。
    很好的建议~~我也是初学者~受教了。

    :)
  • 6楼:IdleMan 发表于 2011-12-16 12:51 回复此评论
    lucene不是有分词么,开源哦
  • 7楼:fc_lamp 发表于 2011-12-16 14:17 回复此评论

    引用来自“无毒欧阳锋”的评论

    lucene不是有分词么,开源哦
    恩,很好,谢谢~~我的这个程序没有那么复杂,只是简单的正则抓取~~
    作学习所用~
开源从代码分享开始 分享代码