#python #http #mechanize #mechanize-python
#python #http #механизировать #механизировать-python
Вопрос:
Я работаю с библиотекарем над реструктуризацией архива цифровых фотографий его организации.
Я создал робота Python с Mechanize и BeautifulSoup, чтобы извлекать около 7000 плохо структурированных и слегка некорректных / неполных документов из коллекции. Данные будут отформатированы для электронной таблицы, которую он может использовать для ее исправления. Прямо сейчас я оцениваю общее количество HTTP-запросов 7500 для создания словаря поиска, а затем собираю данные, не считая ошибок и повторений в моем коде, а затем еще многих по мере продвижения проекта.
Я предполагаю, что есть какое-то встроенное ограничение на то, как быстро я могу отправлять эти запросы, и даже если этого не произойдет, я дам своим роботам задержки, чтобы вести себя вежливо с перегруженными веб-серверами. Мой вопрос (на который, по общему признанию, невозможно ответить с полной точностью) касается того, как быстро я могу отправлять HTTP-запросы, прежде чем столкнусь со встроенным ограничением скорости?
Я бы предпочел не публиковать URL-адрес домена, который мы очищаем, но если это уместно, я спрошу своего друга, можно ли поделиться.
Примечание: я понимаю, что это не лучший способ решить нашу проблему (реструктуризация / организация базы данных), но мы создаем proof-of-concept, чтобы убедить начальство доверить моему другу копию базы данных, из которой он проведет бюрократию, необходимую для разрешениямне работать непосредственно с данными.
Они также предоставили нам API для фида ATOM, но для поиска требуется ключевое слово, и оно кажется бесполезным для задачи пошагового просмотра каждой фотографии в конкретной коллекции.
Комментарии:
1. Я предлагаю вам делать один запрос в секунду и запускать его ночью или в выходные. Тогда вы должны быть сохранены.
Ответ №1:
Для HTTP нет встроенного ограничения скорости. Большинство обычных веб-серверов не настроены «из коробки» на ограничение скорости. Если ограничение скорости установлено, оно почти наверняка было введено администраторами веб-сайта, и вам придется спросить их, что они настроили.
Некоторые поисковые системы уважают нестандартное расширение для robots.txt это предполагает ограничение скорости, так что проверьте наличие Crawl-delay
входа robots.txt
.
У HTTP есть ограничение на одновременное подключение в два соединения, но браузеры уже начали игнорировать это, и предпринимаются усилия по пересмотру этой части стандарта, поскольку она довольно устарела.
Комментарии:
1. robots.txt (= ИДЕАЛЬНО! «Задержка обхода: 10» — я предполагаю, что это означает 10 секунд?