网络编程
位置:首页>> 网络编程>> Python编程>> Python读取本地文件并解析网页元素的方法

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

作者:林毅洋  发布时间:2022-01-10 08:06:27 

标签:Python,读取,本地,解析,网页

如下所示:


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>&copy; Mugglecoding</p>
</div>
</body>
</html>

来源:https://blog.csdn.net/kajweb/article/details/54745114

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com