2017-01-02 5 views
0

Я использовал bs4 для извлечения этого набора результатов в bs4.Итерация через набор результатов bs4

<div> 
<div> 
</div> 
Content 1 
</div> 

<div> 
Content 2 
</div> 

Я пытаюсь извлечь эти 2 элемента.

Moi not cute not hot, the ugly bui bui type 1 и Actually, moi also dun know

from bs4 import BeautifulSoup 
import urllib 
import re 
r = urllib.urlopen(
    'http://forums.hardwarezone.com.sg/eat-drink-man-woman-16/%5Bofficial%5D-chit-chat-students-part-2-a-5526993-55.html').read() 

soup = BeautifulSoup(r, "lxml") 
letters = soup.find_all("div", attrs={"id":re.compile("post_message_\d+")}) 

Вот мой код. Тем не менее, как выполнить итерацию в результирующем наборе, чтобы он только извлекал контент до закрывающего div.

letters.find_all('div') возвращает пустой комплект.

ответ

0

Все сообщения:

from bs4 import BeautifulSoup 
import urllib 
import re 

r = urllib.urlopen(
    'http://forums.hardwarezone.com.sg/eat-drink-man-woman-16/%5Bofficial%5D-chit-chat-students-part-2-a-5526993-55.html').read() 

soup = BeautifulSoup(r, "lxml") 
letters = soup.find_all("div", attrs={"id":re.compile("post_message_\d+")}) 
for a in letters: 
    print [b.strip() for b in a.text.strip().split('\n') if b.strip()] 
Смежные вопросы