Python Web Scraping без Beautiful Soup или модулей не по умолчанию?

Я полностью и совершенно новичок в веб-скрапинге и ранее использовал Python только для создания IRC с использованием сокетов и т. Д.

Что я хочу сделать со своим IRC, так это получить IP-адрес или список IP-адресов из бесплатного блога, который я создал с помощью Google Blogger.

Поэтому, естественно, мне нужно сделать некоторые веб-скрейпинги, чтобы получить эту информацию. Проблема в том, как я могу сделать это, не требуя, чтобы клиент загружал это, чтобы установить дополнения, такие как Beautiful Soup, чтобы заставить его работать?

Краткое описание проблемы: Необходимо получить некоторые данные с веб-страницы без использования сторонних модулей.

Я много гуглил, но нашел решения только с помощью Beautiful Soup. (И даже с этим трудно понять)


person Micrified    schedule 08.09.2013    source источник
comment
Может быть, вы можете включить пакет BeutifulSoap в ту же папку, что и скрипт? Это позволит вам использовать его без установки. Или просто используйте регулярное выражение, чтобы получить все данные, которые вам нужны, из HTML.   -  person 4d4c    schedule 08.09.2013
comment
@ ton1cЧто будет с использованием регулярных выражений для получения данных?   -  person Micrified    schedule 08.09.2013


Ответы (1)


import urllib2,re
content = urllib2.urlopen("http://somme.url").read()
print re.findall("\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}",content)

что-то такое

person Joran Beasley    schedule 08.09.2013
comment
Не могли бы вы объяснить, как бы вы изменили это, чтобы, скажем, взять фразу Press In Dire Situations на nooooooooooooooo.com - person Micrified; 08.09.2013
comment
Что-то вроде этого захватит все содержимое тегов ‹p› import urllib2,re content = urllib2.urlopen("http://www.nooooooooooooooo.com/").read() print re.findall(r"<p>(.+)</p>", content) - person 4d4c; 08.09.2013
comment
@tonic Я думаю, ты имеешь в виду "<p>([^<]+)</p>" - person Joran Beasley; 08.09.2013
comment
@JoranBeasley Я продолжаю получать синтаксическую ошибку, ссылаясь на строку re.findall как на недействительную и выделяя «re». Я сделал так же, как и вы... РЕДАКТИРОВАТЬ: я использую Python 3.2, если это поможет - person Micrified; 09.09.2013
comment
С тех пор я решил эту проблему. Я назначаю переменную необработанному дампу HTML, используя urllib, и просматриваю его, используя re, который был импортирован отдельно от urllib. - person Micrified; 09.09.2013