samlib_bot
Jul. 5th, 2018 07:20 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
А я таки доделал samlib_bot до такого состояния, чтобы можно было вписать в Makefile и при обновлении "Ясмины" (пока только Ясмины - соберусь что-то дописывать в другие вещи, впишу и туда) пересобранный общий файл автоматически перевыкладывался на самлиб.
Постить им новые вещи еще не пробовал.
Код немного ужасный. Но теперь можно подумать и с учетом рекомендаций
phd_ru и
yurikhan переписать чтобы было красиво.
А то mechanize во-первых еще не портирован на python 3, во-вторых
он слишком большой и делает все сам. Это неправильно. Есть хорошие модули
requests, BeautifulSoup, и html5lib. И правильнее предоставить конечному продукту пользоваться любыми из них на выбор, а самому делать только работу с формами. У bs, кстати можно позаимствовать концепцию того, как работать с разными нижележащими engine.
А еще, пожалуй, придется почитать перловый WWW::Mechanize::TreeBuilder, чтобы понять как люди на других языках это делают.
Обидно, что скорее всего я на это не найду времени, как до сих пор не нашел времени на тесты на CMS. Там где лично у меня чешется я уже почесал. Правда, у меня есть еще кое-какие задачки на automated web browsing.
Постить им новые вещи еще не пробовал.
Код немного ужасный. Но теперь можно подумать и с учетом рекомендаций
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
А то mechanize во-первых еще не портирован на python 3, во-вторых
он слишком большой и делает все сам. Это неправильно. Есть хорошие модули
requests, BeautifulSoup, и html5lib. И правильнее предоставить конечному продукту пользоваться любыми из них на выбор, а самому делать только работу с формами. У bs, кстати можно позаимствовать концепцию того, как работать с разными нижележащими engine.
А еще, пожалуй, придется почитать перловый WWW::Mechanize::TreeBuilder, чтобы понять как люди на других языках это делают.
Обидно, что скорее всего я на это не найду времени, как до сих пор не нашел времени на тесты на CMS. Там где лично у меня чешется я уже почесал. Правда, у меня есть еще кое-какие задачки на automated web browsing.
no subject
Date: 2018-07-05 02:07 pm (UTC)Mechanize + BeautifulSoup + Python2/3.
Сам не пользовался, ничего не скажу. Вообще конкурентов и альтернатив у mechanize хватает, особенно с использованием selenium.
no subject
Date: 2018-07-05 02:12 pm (UTC)А что касается selenium то для этой задачи он мне категорически вреден. Типа я захожу на удаленную машину по ssh с мобильника и говорю там make publish. Оно мне тут настоящий браузер запускать будет? Через порт форвардинг по gprs? Или мне ему еще xvfb предоставить?
Тем более, что надо Мошкову должное отдать, джаваскриптом он не злоупотребляет.
selenium
Date: 2018-07-05 02:20 pm (UTC)Re: selenium
Date: 2018-07-05 02:32 pm (UTC)Re: selenium
Date: 2018-07-08 08:01 pm (UTC)