• 热门专题

python页面信息抓取

作者:  发布日期:2015-07-09 20:29:06
Tag标签:页面  信息  
  • 1. 特点

      在python 解析html这篇文章中已经做了初步的介绍,接下来再坐进一步的说明。python抓取页面信息有以下两个特点:
      

    依赖于HTML的架构。

    微小的变化可能会导致抓取失败,这取决于你编码的技巧。


    2. 抓取示例

      首先看一下百度视频网页的源代码,大致浏览下,选定要抓取的网页元素。
      src
      
      假设我们要对div标签id为focusCarouselList里的相关内容进行提取。首先进入python命令行环境,先按照以下代码打开网页并读取内容。
      

    >>>
    >>> import urllib
    >>> from bs4 import BeautifulSoup
    >>>
    >>> httpRespone = urllib.urlopen(“http://video.baidu.com“)
    >>>
    >>> httpRespone.code
    200
    >>>

      将页面信息读入到html的一个变量中:html = httpRespone.read()。
      使用BeautifulSoup解析这个页面:bs = BeautifulSoup(html,'lxml')。
      查找id为ocusCarouselList的div标签:focusList = bs.find('div',id='focusCarouselList')。
      
      bs
      
      在focusList中查找这一div中所有的超链接:allLinks = focusList.find_all('a')。
      可用allLinks[0]直接访问第一个链接的内容:
      link0
      
      如果要在这些超链接中查找标题为“协警押送嫌犯遭其同伙袭击”,可用下面代码:
      videoLink1 = bs.find('a',{'title':'协警押送嫌犯遭其同伙袭击'})
      title
      
      videoLink1[‘href’]可以直接获取到链接的地址。
      
      查找所有图片的标签:imgLinks = focusList.find_all('img')。
      获取某个图片链接的源地址:imgLinks[0]['src']
      img

     

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规