Я пытаюсь очистить текст с веб-сайта, но в особенности только текст, связанный с одной из двух конкретных ссылок, а затем дополнительно очистить другую текстовую строку, которая следует вскоре после нее.
Вторую текстовую строку легко очистить, поскольку она включает в себя уникальный класс, на который я могу ориентироваться, поэтому я уже получил эту работу, но я не смог успешно очистить первый текст (с одним из двух конкретных ссылки).
Я нашел этот вопрос ( Найти конкретную ссылку с Beautifulsoup ) и попытался реализовать его варианты, но не смог заставить его работать.
Вот фрагмент кода HTML, который я пытаюсь очистить. Эта скороговорка повторяется неоднократно в течение каждой страницы, которую я очищаю:
<em>[<a href="forum.php?mod=forumdisplay&fid=191&filter=typeid&typeid=19">女孩</a>]</em> <a href="thread-443414-1-1.html" onclick="atarget(this)" class="s xst">寻找2003年出生2004年失踪贵州省黔西南布依族苗族自治州贞丰县珉谷镇锅底冲 黄冬冬289179</a>
Две части, которые я пытаюсь очистить и затем сохранить вместе в списке, представляют собой две строки текста на китайском языке.
Первый из них, means, что означает «женщина», - это тот, который я не смог успешно очистить.
Этому всегда предшествует одна из этих двух ссылок:
forum.php?mod=forumdisplay&fid=191&filter=typeid&typeid=19
(женский)
forum.php?mod=forumdisplay&fid=191&filter=typeid&typeid=15
(мужской)
Я проверил целую кучу разных вещей, включая такие как:
gender_containers = soup.find_all('a', href = 'forum.php?mod=forumdisplay&fid=191&filter=typeid&typeid=19')
print(gender_containers.get_text())
Но из-за всего, что я пробовал, я получаю ошибки вроде:
ResultSet object has no attribute 'get_text'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?
Я думаю, что я не могу найти эти ссылки для захвата текста, но мои элементарные навыки Python до сих пор не помогли мне понять, как это сделать.
В конечном итоге я хочу, чтобы каждая страница была очищена так, чтобы две строки в этом коде (女孩
и 寻找2003年出生2004年失踪贵州省...
)
<em>[<a href="forum.php?mod=forumdisplay&fid=191&filter=typeid&typeid=19">女孩</a>]</em> <a href="thread-443414-1-1.html" onclick="atarget(this)" class="s xst">寻找2003年出生2004年失踪贵州省黔西南布依族苗族自治州贞丰县珉谷镇锅底冲 黄冬冬289179</a>
... очищаются как две отдельные переменные, так что я могу сохранить их как два элемента в списке, а затем перейти к следующему экземпляру этого кода, очистить эти два фрагмента текста и сохранить их как другой список и т. Д. Я строю список списка, в котором я хочу, чтобы каждая строка / вложенный список содержал две строки: пол (女孩 или 男孩), а затем более длинную строку, которая имеет гораздо больше вариаций.
(Но в настоящее время у меня есть рабочий код, который очищает и сохраняет его, я просто не смог заставить работать гендерную часть.)