Я делаю проект python, в котором я создал тестовый веб-сайт wix. Я хочу получить данные (текст) с веб-сайта wix, используя urllib, поэтому я сделал url.urlopen(ADDRESS).readlines(), проблема в том, что он не дал мне ничего из текста на странице, а только информацию о структуре страницу в HTML. как мне извлечь запрошенную текстовую информацию с веб-сайта?
Использование python для получения данных (текста) от wix
Ответы (1)
Я думаю, вам нужно будет в конечном итоге проанализировать html для информации, которую вы хотите. Проверьте эту библиотеку Python:
https://docs.python.org/3/library/html.parser.html
Вы могли бы сделать что-то вроде этого:
from html.parser import HTMLParser
rel_data = []
class MyHTMLParser(HTMLParser):
def handle_data(self, data):
rel_data.append(data)
parser = MyHTMLParser()
parser.feed('<html><head><title>Test</title></head>'
'<body><h1>Parse me!</h1></body></html>')
print(rel_data)
Выход
["Test", "Parse me!"]
person
Chris Risley
schedule
09.02.2018
скажем, это дает мне ошибку при импорте, должен ли я вместо этого использовать from HTMLParser import HTMLParser?
- person Lior shem; 09.02.2018
Да, это сработает. Я должен был указать, что использую Python 3. Для Python 2 импорт выполняется из HTMLParser import HTMLParser.
- person Chris Risley; 09.02.2018
хорошо, теперь это работает, но он говорит, что я задаю 3 параметра вместо 2 в классе MyHTMLParser, вот скриншот - gyazo.com/54f3486ded8029219a52e8ab4696bd9c
- person Lior shem; 09.02.2018
Неважно, я случайно импортировал его неправильно. это действительно из HTMLParser import HTMLParser. большое спасибо за все!!! также у меня есть вопрос, я только что видел библиотеку pyhton под названием scrapy, ее роль такая же, как у HTMLParser?
- person Lior shem; 09.02.2018
Я не слишком много знаю о scrapy, но похоже, что это тоже может быть полезно. При беглом взгляде на него кажется, что вы можете запросить конкретное имя тега, если хотите. Не забудьте выбрать лучший ответ :)
- person Chris Risley; 09.02.2018
Эй, извините, я снова вас беспокою, но я не могу понять, почему моя программа не работает - /а> . Я также распечатал контент, и он отображается в HTML, поэтому я не могу понять, почему он не работает.
- person Lior shem; 09.02.2018
Можете ли вы добавить свой код в качестве редактирования вашего вопроса? Тогда я смогу проверить это на себе.
- person Chris Risley; 09.02.2018
Подождите, неважно, я просто удалил скобки из печати, и все заработало, спасибо!
- person Lior shem; 09.02.2018
Круто, рад, что у тебя получилось.
- person Chris Risley; 09.02.2018