solovs03
У меня вопрос. С какой вороньей пи**ы Python соблюдает так много новых строк?(Не знаю как спросить по другому).
Это дикий текст, он всегда неудобный, и это ещё не самый худший случай. Это только в учебных текстах всегда всё удобно, потому что их
готовят для читателей, чтобы они особо не заморачивались, решая задачу. Но это не всегда, конечно; бывают книги и с трудными заданиями (K&R2 - хороший пример, там много диких заданий).
Так что у тебя должно быть два кода: один код скачивает весь текст, который там есть; второй код очищает скачанный текст и приводит его к точному виду. И вот после этого всего ты и работаешь с чистым и удобным текстом.
Учись так делать сразу (разделять процессы), потому что каждый этап может неожиданно оказываться очень сложным. Простое скачивание может требовать посылания дополнительных запросов*. Там могуть оказываться сломанные страницы (браузер отображает, а html-код неправильный и lxml выпадает просто и всё). Обработка текста может требовать умное вырезание внутри, чтобы там удалить какие-нибудь теги, но при этом не удалить ничего лишнего. Поэтому, если тебе кажется, что всё просто и можно это слить воедино, ты потом попадёшь с этой вредной привычкой и будешь всё равно всё переделывать, раскладывая на независимые части.
* У меня так было на YouTube. Вроде просто надо было скачать плейлист и сформировать из него типа таблицы, чтобы потом можно было видео открывать с диска и всю информацию писать о просмотренных роликах (в инете так не сделаешь). Так там для маленьких плейлистов всё работало нормально и легко, но стоило этот скрипт применить к большому плейлисту, как сразу многие видео куда-то пропадали. Когда стал разбираться, оказалось, что YouTube до ста роликов отдаёт нормально, а после ста роликов там используется дополнительный запрос в json'е. Его надо послать на YouTube и тогда он отдаст ролики после ста. То есть пришлось в скрипт встраивать ещё дополнительную проверку на количество роликов и отсылку запроса на дополнительные ролики. Хотя это YouTube, там не должно быть каких-то сюрпризов и костылей.