Я пишу приложение для Android, использующее python для android (sl4a), и то, что я хочу, это поиск веб-сайта шутки и извлечение шутки. Тогда скажи мне эту шутку, чтобы разбудить меня. Пока он сохраняет исходный источник html в списке, но мне нужно, чтобы он создавал новый список, сохраняя данные между тегами html, а затем читая эти данные. Его парсер я не могу работать. Здесь код:
import android
droid = android.Android()
import urllib
current = 0
newlist = []
sock = urllib.urlopen("http://m.funtweets.com/random")
htmlSource = sock.read()
sock.close()
rawhtml = []
rawhtml.append (htmlSource)
while current < len(rawhtml):
while current != "<div class=":
if [current] == "</b></a>":
newlist.append (current)
current += 1
print newlist
Вот как это сделать: [Код] import re import urllib2
page = urllib2.urlopen("http://www.m.funtweets.com/random").read()
user = re.compile(r'<span>@</span>(\w+)')
text = re.compile(r"</b></a> (\w.*)")
user_lst =[match.group(1) for match in re.finditer(user, page)]
text_lst =[match.group(1) for match in re.finditer(text, page)]
for _user, _text in zip(user_lst, text_lst):
print '@{0}\n{1}\n'.format(_user,_text)
[/код]
используйте этот LIB для разбора HTML в android http://jsoup.org/
его охват и широко распространенный lib среди разработчиков, он также доступен для python :)