【发布时间】:2014-05-15 15:31:25
【问题描述】:
我正在尝试在此处编写网络爬虫,并且该网站正在向我的代码返回 403 禁止,即使它是可通过浏览器访问的网页。我的主要问题是:这是他们在网站上设置的内容以阻止网络抓取还是我做错了什么?
import java.net.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws Exception {
URL oracle = new URL("http://www.pcgs.com/prices/");
BufferedReader in = new BufferedReader(
new InputStreamReader(oracle.openStream()));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
}
如果我将网址更改为http://www.google.com 之类的网站,那么它将返回 html。如果该网站被阻止,有没有办法解决这个问题?感谢您的帮助
【问题讨论】:
-
是的。你正在做他们积极劝阻的事情。当然,您可能可以使用像 selenium 这样的工具来绕过它......但是当/如果他们检测到它时,他们可能会阻止您的 IP 地址。
-
谢谢,我认为更好的方法是找到一个不会阻止我的程序的页面。
标签: java html web-scraping