如下所示:
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="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>
新闻热点
疑难解答