我正在用 Java 编写一个爬虫,它检查 IMDB 电影页面并提取一些信息,如名称、年份等。用户编写(或复制/粘贴)标题的链接,我的程序应该完成剩下的工作。
在检查了几个(imdb)页面的 html 源代码并浏览了爬虫的工作原理后,我设法编写了一个代码。
我得到的信息(例如标题)是我的母语。如果我的母语中没有信息,我会得到原始标题。我想要的是用我选择的特定语言获得标题。
我对此很陌生,所以如果我错了,请纠正我,但我会用我的母语得到结果,因为 imdb “看到”我来自塞尔维亚,然后为我定制了结果。所以基本上我需要以某种方式告诉它我更喜欢英语的结果?这可能吗(我想是的),我该怎么做?
编辑:程序像这样爬行:它获取字符串中的 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;
}
此代码通过页面并在控制台上打印主标题。