Форум сайта python.su
есть 3000 html страниц и следующий код:
html_dir = "%s/organizations" % DATA_HTML_PATH
html_files = os.listdir(html_dir)
for file in html_files:
file = open(html_dir + "/" + file)
content = file.read()
#name = BeautifulSoup(content).find('h1', { 'class': 'oldh1' })
#name = name.string.replace(" ", "")
file.close()
Офлайн
попробуйте использовать os.walk
import os
html_dir = "%s/organizations" % DATA_HTML_PATH
for root, dirs, files in os.walk(html_dir):
for name in files:
content = open(os.path.join(root, name)).read()
Офлайн
Если важна скорость, то тогда лучше использовать ElementTree.
Кстати, а что вы потом делаете с name?
Зачем вам BeautifulSoup, может быть вообще будет достаточно работы со строками, регулярными выражениями?
Какой размер файлов?
Офлайн
Ну и напоследок:
http://www.crummy.com/software/BeautifulSoup/documentation.html#Improving Performance by Parsing Only Part of the Document
Офлайн