↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Anderson1004
15 июня 2017
Aa Aa
#API #Python #fanfics
Когда ты хочешь попробовать сделать мобильное приложение для сайта у которого нет api, ты его пишешь самостоятельно.
Test
Ладно, это не api, а просто парсер. Еще нужно написать сам сервер, начать кешировать данные в свою bd и т.д. Но это уже работает и может быть использовано в каком нибудь Discord боте например.
15 июня 2017
16 комментариев
А если дизайн фанфикса поменяется, оно всё ещё будет работать?
lrkis
Не думаю, что Реф будет менять саму структуру - так что, скорее всего, будет.
Хотя тексты - из-за "... и мобильную для получения текста фанфиков" могут отвалиться - а ну как Реф решит, что с адаптивным дизайном мобильная версия не нужна, и выключит её.
ДНИЩE--ЫЫЫЫ
Когда-то я тоже делал такую фигню и это было больно:(
Fakеr
Из-за редиректа? Или из-за того, что всё api возвращают html с разметкой?
ДНИЩE--ЫЫЫЫ
BufferOverflow
Редирект - фигня, второе это уже пытки
Fakеr
Это да. Но HTML-парсер + LINQ здорово упрощают это дело. Без Linq вообще работать с коллекциями боль, а с ним пилишь один запрос на пару строк и вот тебе вся выжимка информации в готовом виде
К примеру:
var votes = accHTML.QuerySelectorAll("td.MessageRight")
//получил все html-элементы постов
.Select(x => new { nick = x.QuerySelector("a.user.small").InnerText, comment = x.QuerySelector("div.MessageText").InnerText })
//получил удобный список объектов из {nick = "Игрок", comment = "Текст поста"}
.Where(x => x.nick != "Мафия на Фанфиксе" && x.comment.ToUpper().Contains("ГОЛОСУЮ"));
//Оставляю только те, которые написала не Мафия на Фанфиксе и которые содержат текст "голосую"
BufferOverflow
К счастью, это Питон и тут вообще все здорово. Хотя разметка не предназначена для того чтобы ее легко было парсить и процесс не очень красивый.
lrkis
Если дизайн поменяется, обновлю.
Oj, edinomyshlennik!
Ya ispol'zuyu drugoj jazyk, a Python u menya v planah. Posovetujte horoshij tutorial?
Anderson1004
Вот и хорошо. :)
ДНИЩE--ЫЫЫЫ
BufferOverflow
Ну такая фигня теперь есть везде, и в жабе идажев пхп(не из клетки)
Adelaidetweetie
Марк Лутц "Изучаем Python", "Программируем на Python". Обе есть на русском, хотя и появились новые версии языка со времени выхода книги, все, что там показано, работает. Так же советую сразу учить Python 3, хотя и найдутся люди которые будут говорить что Python 2 лучше. Но он прекратит обновляться уже в 2020, а новые фичи уже не завозят)
Anderson1004
Разметка вообще не предназначена для использования в API, если с этого начать )
Fakеr
И не зря. Времени экономит жуть
BufferOverflow
API вообще не через парс делается, если начинать с начала) Просто я так мягко выразил свое негодование от того, какими костылями мне пришлось доставать нужные данные из разметки)
Anderson1004
Thank you:)
ПОИСК
ФАНФИКОВ









Закрыть
Закрыть
Закрыть