如下所示:
from bs4 import BeautifulSouppath = './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 beachesHow to get tannedHow to be an Aussie beach bumSummer'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="" 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读取本地文件并解析网页元素的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。