zoukankan      html  css  js  c++  java
  • 理解爬虫原理

     本次作业来源于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2881

    1. 简单说明爬虫原理

        向网站发起请求,获取资源后分析并提取有用数据的程序;从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频) 爬到本地,进而提取自己需要的数据,存放起来使用.

    2. 理解爬虫开发过程

    1).简要说明浏览器工作原理;

       浏览器的功能是将获取到的HTML代码进行解析,然后将原始的代码转变成我们直接看到的网站页面,网页通过浏览器的解析,加载CSS与JS等文件对网页进行解析渲染,达到我们看到绚丽的网页。

    2).使用 requests 库抓取网站数据;

    requests.get(url) 获取校园新闻首页html代码

    import requests
    requests
    url='http://news.gzcc.cn/html/2019/xiaoyuanxinwen_0320/11029.html'
    res=requests.get(url)
    type(res)
    res.encoding='utf-8'
    res.text

    3).了解网页

    写一个简单的html文件,包含多个标签,类,id

    html_sample = ' 
    <html> 
        <body> 
              <h1 id="title">Hello</h1> 
              <a href="#" class="link"> This is link1</a>
              <a href="# link2" class="link" qao=123> This is link2</a>
        </body> 
    </html> '

    4).使用 Beautiful Soup 解析网页;

    通过BeautifulSoup(html_sample,'html.parser')把上述html文件解析成DOM Tree

    soupn=BeautifulSoup(res.text,'html.parser')
    soupn

    select(选择器)定位数据

    #使用select找出含有h1标签的元素,返回list
    header=soups.select('h1')
    #使用select找出特定CSS属性的元素
    t = soups.select('#title')
    l = soups.select('.link')

    找出含有特定标签的html元素

    找出含有特定类名的html元素

    找出含有特定id名的html元素

    soups = BeautifulSoup(html,'html.parser')
    a1 =soups.a
    a = soups.select('a')
    h = soups.select('h1')
    t = soups.select('#title')

    3.提取一篇校园新闻的标题、发布时间、发布单位、作者、点击次数、内容等信息

    如url = 'http://news.gzcc.cn/html/2019/xiaoyuanxinwen_0320/11029.html'

    要求发布时间为datetime类型,点击次数为数值型,其它是字符串类型。

     新闻的标题:

     发布时间

    作者:

    发布单位:

     点击次数:

    内容:

     

  • 相关阅读:
    Unix命令大全
    vs2008 与 IE8出现的兼容性问题
    Java 创建文件、文件夹以及临时文件
    如何修改Wamp中mysql默认空密码
    PAT 乙级真题 1003.数素数
    Tags support in htmlText flash as3
    DelphiXE4 FireMonkey 试玩记录,开发IOS应用 还是移植
    10 Great iphone App Review sites to Promote your Apps!
    HTML tags in textfield
    Delphi XE4 IOS 开发, "No eligible applications were found“
  • 原文地址:https://www.cnblogs.com/lxyu/p/10622574.html
Copyright © 2011-2022 走看看