Получить HTML с помощью WWW :: Mechanize вызывает «Запрещено» - PullRequest
0 голосов
/ 11 декабря 2010

Я хочу получить содержимое фильма imdb с помощью WWW :: Mechanize. Прежде всего, я должен найти способ найти соответствующий / title / tt * url. Когда у меня есть, например, фильм под названием «бойцовский клуб», я хочу посетить эту ссылку: * TTP: //www.imdb.com/find s = все & д = бой + клуб По какой-то причине это уже не удается. Вот строка, которая вызывает ошибку

$mech->get('http://www.imdb.com/find?s=all&q=fight+club');

сообщение об ошибке:

Ошибка ПОЛУЧЕНИЯ http://www.imdb.com/find?s=all&q=fight+club: Запрещено

Если я напишу что-то вроде get (http://www.google.com),, то все будет работать нормально. Какая разница при использовании imdb? Любое предложение для альтернативного решения?

Ответы [ 2 ]

5 голосов
/ 11 декабря 2010

IMDB, вероятно, перехватывает строку User-Agent и отклоняет запросы WWW :: Mechanize. «Решение» состоит в том, чтобы уважать их желание заблокировать вам автоматическое взаимодействие с сайтом.

(Или вы можете очень, очень внимательно прочитать условия и затем изменить строку агента пользователя)

Лицензирование контента IMDb; Согласие на использование роботов и сканеров. Если вы заинтересованы в получении нашего явного письменного разрешения на использование содержимого IMDb для не личного (в том числе коммерческого) использования, посетите раздел лицензирования контента или свяжитесь с нашим отделом лицензирования. Мы разрешаем ограниченное использование роботов и сканеров, например, из определенных поисковых систем, с нашего письменного согласия. Если вы заинтересованы в получении нашего письменного разрешения на использование роботов или сканеров на нашем сайте, пожалуйста, свяжитесь с нашим отделом лицензирования.

0 голосов
/ 12 декабря 2010

Дэвид прав, наверное, так и происходит.

Но знаете ли вы, что из IMDB по FTP можно получить много информации?И что у них есть ряд инструментов, которые вы можете использовать для получения информации, кроме скребков?

См. http://www.imdb.com/interfaces

...