我正在写一个小爬虫.下载网页源html的最佳方法是什么?我目前正在使用下面的一小段代码,但有时候结果只是页面源的一半!我不知道是什么问题.有些人建议我应该使用Jsoup但是如果它太长,使用Jsoup中的.get.html()函数也会返回页面源的一半.由于我正在编写一个爬虫,因此该方法支持unicode(UTF-8)非常重要,效率也非常重要.我想知道最好的现代方式,所以我问你们,因为我是Java的新手.谢谢.
码:
public static String downloadPage(String url)
{
try
{
URL pageURL = new URL(url);
StringBuilder text = new StringBuilder();
Scanner scanner = new Scanner(pageURL.openStream(), "utf-8");
try {
while (scanner.hasNextLine()){
text.append(scanner.nextLine() + NL);
}
}
finally{
scanner.close();
}
return text.toString();
}
catch(Exception ex)
{
return null;
}
}
Run Code Online (Sandbox Code Playgroud) 我是网络编程的新手.我创建了一个简单的登录表单(使用php).现在我想把这个转换为HTTPS(带SSL)登录表单.我该怎么做才能做到这一点?
我在users表中插入一行来注册一个新用户.我想获取user_id字段(这是自动增量)并在另一个查询中使用它.这里提供了一个解决方案: 如何在mysql中获取INSERTed行的ID?但是我想知道如果另一个用户在我插入新行之后立即注册,并且在我的php代码中运行mysql_insert_id()函数之前会发生什么.该函数将返回什么?
我想使用Git或SVN(Subversion)之一作为备份系统.对我来说唯一重要的是系统的存储和性能.我搜索了一下,我发现的大多数结果是将它们与源控制相关的功能进行比较,例如分支,本地存储库等.但是,正如我所提到的,我不是在寻找这样的功能.
总之,我想知道:
如果在比较中添加了一些事实(实验),我将不胜感激.我正在寻找可靠的证据.
我的服务器有24GB的RAM.它在Windows Server 2008上运行.现在,我正在寻找,其中大约80%是免费的.但是,当我尝试运行Java应用程序时,我可以给它的堆大小赋予的最大值是 - Xmx1500m.如果我尝试-Xmx1600m或-Xmx2G该应用程序将无法启动.这是Java或我的应用程序的问题吗?