我正在使用crawler 4J在gitHub上抓取用户个人资料,例如我想抓取网址:https://github.com/search?q=java+location:India&p=1 现在我在我的爬虫控制器中添加这个硬编码的URL,如:
String url =" https://github.com/search?q=java+location:India&p=1&#34 ;; controller.addSeed(URL);
当抓取工具4J启动时,抓取的网址为: https://github.com/search?q=java%2Blocation%3AIndia&p=1
给了我错误页面。 我应该怎么做,我尝试过给出编码的网址,但这也不起作用。
答案 0 :(得分:0)
我最终必须对crawler4J源代码做一点点修改: 文件名:URLCanonicalizer.java 方法:percentEncodeRfc3986
刚刚评论了此方法的第一行,我能够抓取并获取结果
// string = string.replace(" +","%2B");
在我的网址中有+字符,并且被%2B取代,我收到了错误页面,我想知道为什么他们在编码整个网址之前专门替换了+字符。