Вместо того, чтобы расширить website_title
список с помощью website_title.append(urlt)
, а затем сразу же перезапись, что urlt
элемент с данными заголовка, вы должны просто добавить данные заголовка непосредственно в списке.
Кроме того, лучше итерации непосредственно над списком clean_url_data
, вместо того, чтобы использовать целочисленный цикл для индекса clean_url_data
. Если вам нужен индекс, вы можете использовать enumerate
. например:
website_title = []
for i, url in enumerate(clean_url_data):
website_title.append(g.extract(url).title)
print i
Если вам действительно не нужен этот индекс, вы можете сделать вещи проще. Вот подход, использующий понимание списка, которое немного быстрее, чем использование append в цикле.
website_title = [g.extract(url).title for url in clean_url_data]
Список постижение использует специальный LIST_APPEND байткод, которая в основном является оператором, так что это быстрее, чем глядя .append
метод в списке в то назвав его; вызов функции Python относительно медленный по сравнению с выполнением оператора.
Я полагаю, что 'g.extract' - это то, что на самом деле требует времени, нет ?! Что оно делает...? – deceze
Уникален ли urlt? – giaosudau
Кажется, что каждая итерация независима, поэтому старайтесь использовать многопроцессорную обработку – galaxyan