提取打印糗事百科的笑话
import requests
import re
from bs4 import BeautifulSoup
url = 'https://www.qiushibaike.com/text/'
html = requests.get(url)
soup = BeautifulSoup(html.text, "html.parser")
labels = soup.find_all('div', class_='content')
for i in labels:
for j in i.find_all('span'):
ha = str(j.string)
print(ha)
但是在打印是发现,会出现部分内容无法打印,显示为None.
仔细检查发现不能打印的都有个共同点,就是都含有换行符,打印整个内容才发现
换行符都是
, 而不是\n。这应该就是无法打印的原因。
所以在使用beautifulsoup解析前先将其替换掉就可以了, 同时为了方便阅读,把换行符也替换为空字符。
html_fix = html.text.replace('<br/>', '')
html_fix = html_fix.replace('\n', '')
最后就可以完整的显示提取出来的内容了。