【发布时间】:2019-09-22 16:39:32
【问题描述】:
我有以下问题要问。
我有一个 bs4.element.Tags 列表,就像这张图片的列表
正如你所看到的,有很多元素都有标签“a href="/title/...">。但是,我不想保留所有这些。我只想要那些从<img> 标记开始。我该如何实现?
其次,当我只保留这些元素时
我只想保留标题标签内的单词。比如下图中要保留“img title="Gravity”这样就只有Gravity这个词了。
HTML 文档链接: HTML Documents for each movie
代码
from tqdm import tqdm
with open('requests_list_dummy.pkl', 'rb') as f:
requests_list_dummy = pickle.load(f)
souplist = []
for i in tqdm(requests_list_dummy):
souplist.append(BeautifulSoup(i.text))
souplist_dummy = souplist
# phase 1
phase_1 = []
for i in tqdm(souplist_dummy):
phase_1.append(i.find_all('div', {'class':'article', 'id': 'titleRecs'}))
# -----------------------------------------------------------------------------------
# phase 2
phase_2 = []
import re
r_one = re.compile(".*title")
for i in tqdm(phase_1):
for j in i:
phase_2.append(j.find_all('img'))
# -----------------------------------------------------------------------------------
# # phase 3
phase_3 = []
for i in tqdm(range(len(phase_2))):
phase_3.append(list(map(lambda x: x, phase_2[i][0:12])))
# # phase 4
phase_4 = []
for i in tqdm(phase_3):
for j in i:
phase_4.append(j.find_all('title'))
【问题讨论】:
-
你能发布实际的 html 而不是图片吗?
-
你的意思是
a>img[title] -
@JackFleeting 我没有 HTML 代码,因为它在 Python Notebook 中。
-
@mplungjan 我尝试调用 .find_all('img', {'title'})..但没有结果
-
不能直接复制粘贴吗?
标签: python html image beautifulsoup tags