gpt4 book ai didi

java - 获取特定语言的 imdb 电影标题

转载 作者:行者123 更新时间:2023-12-01 18:38:16 27 4
gpt4 key购买 nike

我正在用 java 编写一个爬虫,它检查 IMDB 电影页面并提取一些信息,如名称、年份等。用户编写(或复制/粘贴)标题的链接,我的程序应该完成其余的工作。

在检查了几个(imdb)页面的 html 源代码并浏览了爬虫的工作原理之后,我成功编写了代码。

我获得的信息(例如标题)是用我的母语写的。如果没有我母语的信息,我会得到原始标题。我想要的是以我选择的特定语言获得标题。

我对此还很陌生,所以如果我错了,请纠正我,但我用我的母语得到结果,因为 IMDB“看到”我来自塞尔维亚,然后为我定制结果。所以基本上我需要以某种方式告诉它我更喜欢英语结果?这可能吗(我想是的),我该怎么做?

编辑:程序像这样爬行:它获取 String 中的 url 路径,将其转换为 url,使用 bufferedreader 读取所有源并检查它得到的内容。我不确定这是否是正确的方法,但它有效(减去语言问题)代码:

public static Info crawlUrl(String urlPath) throws IOException{
Info info = new Info();

//
URL url = new URL(urlPath);
URLConnection uc = url.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(
uc.getInputStream(), "UTF-8"));
String inputLine;
while ((inputLine = in.readLine()) != null){
if(inputLine.contains("<title>")) System.out.println(inputLine);
}
in.close();
//
return info;
}

此代码遍历页面并在控制台上打印主标题。

最佳答案

您不需要抓取 IMDB,您可以使用他们提供的转储:http://www.imdb.com/interfaces

还有一个针对它们提供的数据的解析器:https://code.google.com/p/imdbdumpimport/它并不完美,但也许会对您有所帮助(您可以期待花费一些努力才能使其发挥作用)。

替代解析器:https://github.com/dedeler/imdb-data-parser

编辑您是说您出于学习目的无论如何都想抓取 IMDB。所以你可能不得不选择 http://en.wikipedia.org/wiki/Content_negotiation正如其他答案中所建议的:

uc.setRequestProperty("Accept-Language", "de; q=1.0, en; q=0.5");

关于java - 获取特定语言的 imdb 电影标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20913728/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com