проверьте, существует ли URL на fanfiction.net - PullRequest
1 голос
/ 11 июля 2011

Я пытаюсь узнать номер последней главы на сайте www.fanfiction.net просто для удовольствия.Для этого я подумал, что, поскольку он имеет фиксированный шаблон URL, я буду просто увеличивать номер главы до того момента, пока он не даст мне URL, который не существует.

Чтобы выяснить, существует ли URL, я опробовалскрипт на этом stackoverflow Ques

Однако я обнаружил, что он не дает ошибку ответа> 400, а скорее дает сообщение вместе с 200 ответом.Как лучше всего определить, существует страница или нет.

Вот ссылка, которая действительно существует существует , а вот ссылка, которая не существует не существует

Как я могу это сделать?

РЕДАКТИРОВАТЬ 1

Благодаря GregSchoen я решил это.Я надеюсь, что это правильно, хотя:)

Я проверил значения для resp.getheader («последний измененный», Нет), и он дает некоторую дату для активных ссылок и Нет для тех, которые не являются.

Большое спасибо

Ответы [ 3 ]

0 голосов
/ 11 июля 2011

Этот веб-сайт не выдает ошибку 404, что делает все эти сценарии бесполезными. Вам нужно будет загрузить всю веб-страницу и проверить, выглядит ли она как 404 страница.

Я думаю, что просто работает:

if (page.find('<style>') == 0):

добивается цели, так как страница начинается с тега <style> (нормальная страница не должна).

0 голосов
/ 11 июля 2011

Если вы делаете запрос HEAD по указанным вами URL-адресам, Last-Modified устанавливается на допустимых страницах, но не на недействительных.Это был бы простой способ ввода правильных страниц, поскольку их сервер не отвечает правильным HTTP-кодом.

0 голосов
/ 11 июля 2011

Возможно, использовать cURL, прочитать 100 байтов и просто искать «FanFiction.Net Message Type 1» в начале данных?

...