繁体   English   中英

使用WWW :: Mechanize获取html导致“禁止”

[英]GET html using WWW::Mechanize causes “Forbidden”

我想通过使用WWW :: Mechanize获得imdb电影的内容。 首先,我必须找到一种方法来查找相应的/ title / tt * url。 当我有一部名为《搏击俱乐部》的电影时,我想访问以下链接:* ttp://www.imdb.com/find?s = all&q = fight + club由于某种原因,这已经失败了。 这是导致错误的行

$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有什么区别? 有替代解决方案的建议吗?

IMDB可能会嗅探User-Agent字符串并拒绝WWW :: Mechanize请求。 “解决方案”是尊重他们阻止您以自动方式与网站进行交互的愿望。

(或者您可以非常非常仔细地阅读他们的条款和条件 ,然后更改用户代理字符串)

许可IMDb内容; 同意使用漫游器和抓取工具:如果您有兴趣获得我们明确的书面许可,以将IMDb内容用于非个人(包括商业)用途,请访问我们的内容许可部分或与我们的许可部门联系。 在我们明确的书面同意下,我们确实允许机器人和爬虫(例如某些搜索引擎的机器人和爬虫)的有限使用。 如果您有兴趣获得我们在网站上使用机器人或履带的明确书面许可,请联系我们的许可部门。

大卫是对的,这可能正在发生。

但是您是否知道IMDB可以通过FTP获得大量信息? 而且,除了抓取工具外,您还可以使用其他工具来获取其信息吗?

请参阅http://www.imdb.com/interfaces

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM