Поиск всех ссылок на сайте
Как мне найти все каталоги и ссылки на сайте? Обратите внимание, что нет ссылки с домашней страницы на все другие страницы. Например, если у меня есть домен, подобный этому users.company.com, и у каждого пользователя будет ссылка, например users.company.com/john, users.company.com/peter и т. Д. Но я не знаю, сколько там пользователей. какие все ссылки и я хочу грубой силой проверить все ссылки. Если я хочу написать скрипт Python для этой работы, где я могу получить информацию для разработки этого на Python?
3 ответа
Поскольку у вас нет ссылок, указывающих с домашней страницы на другие страницы. Единственная информация, которую вы имеете, - это URL домашней страницы и шаблон URL, используемый для доступа к пользователям.
Единственная возможность, которую я вижу, это использовать словарь имен или все возможные строковые перестановки ограниченной длины. И затем доступ к каждому из них.
Загляните на http://docs.python.org/2/library/urllib.html, чтобы узнать, как можно создавать HTTP-запросы / открывать URL-адреса.
Затем напишите цикл, который перебирает все имена / строковые перестановки и вызывает URL.
Вы могли бы рассмотреть возможность сделать это одновременно, чего должно быть относительно легко достичь: http://en.wikipedia.org/wiki/Embarrassingly_parallel
Вместо того, чтобы сначала писать скрипт на Python, вы можете использовать сторонние инструменты для этой цели.
1) Первый шаг - создать зеркало целевого веб-сайта, а затем разобрать его. Вы можете создать зеркало целевого веб-сайта с помощью "wget -mk http://www.targetwebsite.com/"
http://www.gnu.org/software/wget/
Чем вы можете анализировать зеркальные коды с помощью Python.
2) Примеры запросов Google dorking:
site:stackru.com
site:stackru.com intitle:"index of"
site:stackru.com ext:html ext:php
Он будет работать правильно для путей, у которых нет файла robots.txt.
Проверьте "механизировать" модуль Python. Это очень удобно для использования. Эти страницы мне очень помогли - отличный источник информации: http://stockrt.github.com/p/emulating-a-browser-in-python-with-mechanize/ https://scraperwiki.com/views/python_mechanize_cheat_sheet/edit/
Просто, чтобы дать вам представление о том, что может делать механизм, вот простая функция, которая выведет список всех ссылок с данного URL:
import mechanize
def test():
headers = ('User-Agent','Mozilla/4.0')
url = 'http://www.google.com'
browser = mechanize.Browser()
browser.addheaders=[headers]
response = browser.open(url)
for link in browser.links():
print link
if __name__ == '__main__':
test()