Python读取本地文件并解析网页元素的方法


Posted in Python onMay 21, 2018

如下所示:

from bs4 import BeautifulSoup
path = './web/new_index.html'
with open(path, 'r') as f:
 Soup = BeautifulSoup(f.read(), 'lxml')
 titles = Soup.select('ul > li > div.article-info > h3 > a')
for title in titles:
 print(title.text)

输出:
Sardinia's top 10 beaches
How to get tanned
How to be an Aussie beach bum
Summer's cheat sheet
#其中
titles = Soup.select('ul > li > div.article-info > h3 > a')
#等效
titles = Soup.select('h3 a')
print(title.text)
#等效
print(title.get_text())
print(title.string)

也可以使用以下代码

import bs4 
 
path = './web/new_index.html' 
 
with open(path, 'r') as f: 
 Soup = bs4.BeautifulSoup(f.read(), 'lxml') 
 
 titles = Soup.select('h3 a') 
for title in titles: 
 print(title.string)

Html原文:

<html>
<head>
 <link rel="stylesheet" type="text/css" href="new_blah.css" rel="external nofollow" >
</head>
<body>
 <div class="header">
  <img src="images/blah.png">
  <ul class="nav">
   <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Home</a></li>
   <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Site</a></li>
   <li><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Other</a></li>
  </ul>
 </div>
 <div class="main-content">
  <h2>Article</h2>
  <ul class="articles">
   <li>
    <img src="images/0001.jpg" width="100" height="91">
    <div class="article-info">
     <h3><a href="www.sample.com" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Sardinia's top 10 beaches</a></h3>
     <p class="meta-info">
      <span class="meta-cate">fun</span>
      <span class="meta-cate">Wow</span>
     </p>
     <p class="description">white sands and turquoise waters</p>
    </div>
    <div class="rate">
     <span class="rate-score">4.5</span>
    </div>
   </li>
   <li>
    <img src="images/0002.jpg" width="100" height="91">
    <div class="article-info">
     <h3><a href="www.sample.com" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >How to get tanned</a></h3>
     <p class="meta-info">
      <span class="meta-cate">butt</span><span class="meta-cate">NSFW</span>
     </p>
     <p class="description">hot bikini girls on beach</p>
    </div>
    <div class="rate">
     <img src="images/Fire.png" width="18" height="18">
     <span class="rate-score">5.0</span>
    </div>
   </li>
   <li>
    <img src="images/0003.jpg" width="100" height="91">
    <div class="article-info">
     <h3><a href="www.sample.com" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >How to be an Aussie beach bum</a></h3>
     <p class="meta-info">
      <span class="meta-cate">sea</span>
     </p>
     <p class="description">To make the most of your visit</p>
    </div>
    <div class="rate">
     <span class="rate-score">3.5</span>
    </div>
   </li>
   <li>
    <img src="images/0004.jpg" width="100" height="91">
    <div class="article-info">
     <h3><a href="www.sample.com" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Summer's cheat sheet</a></h3>
     <p class="meta-info">
      <span class="meta-cate">bay</span>
      <span class="meta-cate">boat</span>
      <span class="meta-cate">beach</span>
     </p>
     <p class="description">choosing a beach in Cape Cod</p>
    </div>
    <div class="rate">
     <span class="rate-score">3.0</span>
    </div>
   </li>
  </ul>
 </div>
 <div class="footer">
  <p>© Mugglecoding</p>
 </div>
</body>
</html>

以上这篇Python读取本地文件并解析网页元素的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python做简单的字符串匹配详解
Mar 21 Python
Python实现PS滤镜Fish lens图像扭曲效果示例
Jan 29 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
Jun 13 Python
pytorch 调整某一维度数据顺序的方法
Dec 08 Python
python实现自动解数独小程序
Jan 21 Python
python3+selenium实现126邮箱登陆并发送邮件功能
Jan 23 Python
Python面向对象程序设计类的封装与继承用法示例
Apr 12 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
python实现网站微信登录的示例代码
Sep 18 Python
opencv python在视屏上截图功能的实现
Mar 05 Python
python如何导出微信公众号文章方法详解
Aug 31 Python
详解pandas apply 并行处理的几种方法
Feb 24 Python
详解Python中的四种队列
May 21 #Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
May 21 #Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
May 21 #Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
May 21 #Python
Python常用字符串替换函数strip、replace及sub用法示例
May 21 #Python
Python下使用Scrapy爬取网页内容的实例
May 21 #Python
python 每天如何定时启动爬虫任务(实现方法分享)
May 21 #Python
You might like
用Apache反向代理设置对外的WWW和文件服务器
2006/10/09 PHP
php中ob_flush函数和flush函数用法分析
2015/03/18 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
2020/01/22 PHP
jQuery1.6 正式版发布并提供下载
2011/05/05 Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
2011/12/11 Javascript
ajax请求get与post的区别总结
2013/11/04 Javascript
高性能JavaScript DOM编程(1)
2015/08/11 Javascript
AngularJS入门教程之路由与多视图详解
2016/08/19 Javascript
Angular.Js的自动化测试详解
2016/12/09 Javascript
浅谈vue+webpack项目调试方法步骤
2017/09/11 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
JavaScript如何借用构造函数继承
2019/11/06 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
基于Element封装一个表格组件tableList的使用方法
2020/06/29 Javascript
vue 实现图片懒加载功能
2020/12/31 Vue.js
vue自定义组件实现双向绑定
2021/01/13 Vue.js
[00:32]10月24、25日 辉夜杯外卡赛附加赛开赛!
2015/10/23 DOTA
[49:13]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第一局
2016/02/27 DOTA
[47:42]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:06:12]VP vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
Django DRF APIView源码运行流程详解
2020/08/17 Python
python如何调用百度识图api
2020/09/29 Python
利用CSS3实现自定义滚动条代码分享
2016/08/18 HTML / CSS
NET程序员上机面试题
2015/05/23 面试题
C#如何进行LDAP用户校验
2012/11/21 面试题
如何从一个文件档案的尾端新增记录
2016/12/02 面试题
网络编辑岗位职责
2014/03/18 职场文书
实习单位鉴定评语
2014/04/26 职场文书
2014年教育培训工作总结
2014/12/08 职场文书
道德与公民自我评价
2015/03/09 职场文书
《半截蜡烛》教学反思
2016/02/19 职场文书
青年岗位能手事迹材料(2016推荐版)
2016/03/01 职场文书
利用Pycharm连接服务器的全过程记录
2021/07/01 Python
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers