• python 解析网页


    二、python 网页解析器

      1、常见的python网页解析工具有:re正则匹配、python自带的html.parser模块、第三方库BeautifulSoup(重点学习)以及lxm库。

      2、常见网页解析器分类

      (1)模糊匹配 :re正则表达式即为字符串式的模糊匹配模式;

      (2)结构化解析: BeatufiulSoup、html.parser与lxml,他们都以DOM树结构为标准,进行标签结构信息的提取。

      3.DOM树解释:即文档对象模型(Document Object Model),其树形标签结构,请见下图。

      所谓结构化解析,就是网页解析器它会将下载的整个HTML文档当成一个Doucment对象,然后在利用其上下结构的标签形式,对这个对象进行上下级的标签进行遍历和信息提取操作。

    # 引入相关的包,urllib与bs4,是获取和解析网页最常用的库
    from urllib.request import urlopen
    from bs4 import BeautifulSoup
    
    # 打开链接
    html=urlopen("https://www.datalearner.com/website_navi")
    
    # 通过urlopen获得网页对象,将其放入BeautifulSoup中,bsObj存放的目标网页的html文档
    
    bsObj=BeautifulSoup(html.read())
    print(bsObj)

    #   soup = BeautifulSoup(open(url,'r',encoding = 'utf-8'))

     1 import requests
     2 from bs4 import BeautifulSoup
     3 
     4 headers={'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36','referer':"www.mmjpg.com" }
     5 all_url = 'http://www.mmjpg.com/' 
     6     #'User-Agent':请求方式  
     7     #'referer':从哪个链接跳转进来的
     8 
     9 start_html = requests.get(all_url,  headers=headers)
    10     #all_url:起始的地址,也就是访问的第一个页面
    11     #headers:请求头,告诉服务器是谁来了。
    12     #requests.get:一个方法能获取all_url的页面内容并且返回内容。
    13 
    14 Soup = BeautifulSoup(start_html.text, 'lxml')
    15     #BeautifulSoup:解析页面
    16     #lxml:解析器
    17     #start_html.text:页面的内容
  • 相关阅读:
    CCPC 2017秦皇岛 M Safest Buildings (给一个圆心在原点的大圆R ,以及n个点 在大圆内存在一个小圆r 问那些点同时在两圆的概率最大)
    LightOJ 1366
    Android UI -- 内容简介
    Android 布局优化 -- 学习笔记
    arcgis android 加载google切片 天地图切片 并且能进行缓存
    Eclipse 卸载插件
    Android 不能勾选 Project Build Target
    spatialite-android-library 环境搭建
    HUFFMAN 树
    指示器随机变量
  • 原文地址:https://www.cnblogs.com/bsszds930/p/12550805.html
Copyright © 2020-2023  润新知