urllib.robotparser.md
1> **Источник:** https://python-all.ru/3.2/library/urllib.robotparser.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 20.9. [`urllib.robotparser`](https://python-all.ru/3.2/library/urllib.robotparser.html#module-urllib.robotparser) – Парсер для robots.txt89Этот модуль предоставляет один класс [`RobotFileParser`](https://python-all.ru/3.2/library/urllib.robotparser.html#urllib.robotparser.RobotFileParser), который отвечает на вопросы, может ли конкретный пользовательский агент загрузить URL на веб-сайте, опубликовавшем файл `robots.txt`. Подробнее о структуре файлов `robots.txt` см. [http://www.robotstxt.org/orig.html](https://python-all.ru/3.2/library/urllib.robotparser.html).1011#### `class urllib.robotparser.RobotFileParser(url='')`1213Этот класс предоставляет методы для чтения, разбора и ответа на вопросы о файле `robots.txt` по адресу *url*.1415#### `set_url(url)`1617Устанавливает URL, указывающий на файл `robots.txt`.1819#### `read()`2021Читает URL файла `robots.txt` и передает его парсеру.2223#### `parse(lines)`2425Разбирает аргумент lines.2627#### `can_fetch(useragent, url)`2829Возвращает `True`, если *useragent* разрешено загружать *url* в соответствии с правилами, содержащимися в обработанном файле `robots.txt`.3031#### `mtime()`3233Возвращает время последней загрузки файла `robots.txt`. Это полезно для долго работающих веб-пауков, которым необходимо периодически проверять новые файлы `robots.txt`.3435#### `modified()`3637Устанавливает время последней загрузки файла `robots.txt` на текущее время.3839Следующий пример демонстрирует базовое использование класса RobotFileParser.4041```python42>>> import urllib.robotparser43>>> rp = urllib.robotparser.RobotFileParser()44>>> rp.set_url("http://www.musi-cal.com/robots.txt")45>>> rp.read()46>>> rp.can_fetch("*", "http://www.musi-cal.com/cgi-bin/search?city=San+Francisco")47False48>>> rp.can_fetch("*", "http://www.musi-cal.com/")49True50```51