Получить содержание веб-страницы с Python?

Первое, что пришло на ум:

  • Array * - представляет олдскульную матрицу элементов памяти - отчасти как псевдоним для нормального type[] массив. Может перечислить. Не может вырасти автоматически. Я принял бы, очень быстро вставляют и retrival скорость.

  • ArrayList - автоматически выращивающий массив. Добавляет больше служебное. Может перечисление., вероятно, медленнее, чем нормальный массив, но все еще довольно быстро. Они используются много в.NET

  • List - один из моих favs - может использоваться с дженериками, таким образом, у Вас может быть массив со строгим контролем типов, например, List<string>. Кроме этого, действия очень как ArrayList

  • Hashtable - простая хеш-таблица. O (1) к O (n) худший случай. Может перечислить значение и свойства ключей, и сделать key/val пар

  • Dictionary - то же как выше только со строгим контролем типов через дженерики, такой как Dictionary<string, string>

  • SortedList - отсортированный универсальный список. Замедленный на вставке, так как это должно выяснить, куда поместить вещи. Может перечисление., вероятно, то же на извлечении, так как это не должно обращаться, но удаление, будет медленнее, чем простой список.

я склонен использовать List и Dictionary все время - как только Вы начинаете использовать их со строгим контролем типов с дженериками, его действительно твердое для возвращения к стандартным неуниверсальным.

существует много других структур данных также - существует KeyValuePair, который можно использовать, чтобы сделать некоторые интересные вещи, существует SortedDictionary, который может быть полезным также.

48
задан Nir Duan 19 February 2018 в 18:49
поделиться

3 ответа

Поскольку вы используете Python 3.1, вам необходимо использовать новый API Python 3.1 .

Попробуйте:

urllib.request.urlopen('http://www.python.org/')

С другой стороны, похоже, что вы работаете с примерами Python 2. Напишите его на Python 2, а затем воспользуйтесь инструментом 2to3 для его преобразования. В Windows 2to3.py находится в \ python31 \ tools \ scripts. Может ли кто-нибудь еще указать, где найти 2to3.py на других платформах?

Изменить

В наши дни я пишу код, совместимый с Python 2 и 3, используя шесть.

from six.moves import urllib
urllib.request.urlopen('http://www.python.org')

Если у вас установлено шесть,

26
ответ дан 26 November 2019 в 18:53
поделиться

То, что вы не знаете, что такое две вещи, не означает, что они равны. Если, когда вы думаете о NULL , вы думаете о «NULL» (строка), тогда вам, вероятно, нужен другой тест на равенство, например, Postgresql's ОТЛИЧИТСЯ ОТ И НЕ ОТЛИЧИТСЯ ОТ

Из документации PostgreSQL по «Функции и операторы сравнения»

выражение ОТЛИЧИТСЯ ОТ выражения

выражения НЕ ОТЛИЧАЕТСЯ ОТ выражения

Для ненулевых входов ОТЛИЧИТЕЛЬНО ОТ совпадает с оператором <> . Однако, если оба входа равны нулю, он возвращает ложь, а если только один вход равен нулю, он возвращает истину. Аналогично, НЕ ОТЛИЧИТСЯ ОТ идентично = для ненулевых входов, но возвращает истину, когда оба входа равны нулю, и ложь, когда только один вход имеет нулевое значение. Таким образом,

1
ответ дан 26 November 2019 в 18:53
поделиться

Mechanize is a great package for "acting like a browser", if you want to handle cookie state, etc.

http://wwwsearch.sourceforge.net/mechanize/

4
ответ дан 26 November 2019 в 18:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: