Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java I';我对正则表达式模式有问题_Java - Fatal编程技术网

Java I';我对正则表达式模式有问题

Java I';我对正则表达式模式有问题,java,Java,我需要一个代理刮刀的帮助。我的应用程序无缘无故抛出异常 我的代码 package com.ElwynDev.PastBinBot; import java.io.IOException; import java.util.HashSet; import java.util.regex.Matcher; import java.util.regex.Pattern; public class ProxyScraper { public static void ScrapProxy(i

我需要一个代理刮刀的帮助。我的应用程序无缘无故抛出异常

我的代码

package com.ElwynDev.PastBinBot;

import java.io.IOException;
import java.util.HashSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ProxyScraper {

    public static void ScrapProxy(int Pages) {

        final int[] searchIds = new int[] { 225957, 278235, 240804, 258000, 227364, 244555, 438084, 438085, 438086, 438087, 438088};
        final String searchUrl = "http://www.proxyfire.net/forum/showthread.php?t=56861?";
        final String proxyExtractingRegex = "[1-9]{2,3}.[1-9]{2,3}.[1-9]{2,3}.[1-9]{2,3}";

        Pattern r = Pattern.compile(proxyExtractingRegex);

        HashSet<String> proxyHashSet = new HashSet<String>();
        for(int searchId : searchIds) {
            Matcher m = null;

            try {
                m = r.matcher(ProxyHandle.get(searchUrl + searchId, null, Pages));
                while(true) {
                    if(m.find()){
                        proxyHashSet.add(m.group());
                    }
                    else
                        break;
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        for(String proxy : proxyHashSet) {
            FileWrighter.logTo("proxy.txt", proxy + "\n");
        }
    }
};
package com.ElwynDev.PastBinBot;
导入java.io.IOException;
导入java.util.HashSet;
导入java.util.regex.Matcher;
导入java.util.regex.Pattern;
公共类代理{
公共静态页面(整版页){
final int[]searchId=new int[]{225957、278235、240804、258000、227364、244555、438084、438085、438086、438087、438088};
最终字符串searchUrl=”http://www.proxyfire.net/forum/showthread.php?t=56861?";
最后一个字符串proxyExtractingRegex=“[1-9]{2,3}.[1-9]{2,3}.[1-9]{2,3}.[1-9]{2,3}”;
Pattern r=Pattern.compile(proxyExtractingRegex);
HashSet proxyHashSet=新HashSet();
for(int-searchId:searchId){
匹配器m=null;
试一试{
m=r.matcher(ProxyHandle.get(searchUrl+searchId,null,Pages));
while(true){
if(m.find()){
添加(m.group());
}
其他的
打破
}
}捕获(IOE异常){
e、 printStackTrace();
}
}
for(字符串代理:proxyHashSet){
FileWrighter.logTo(“proxy.txt”,proxy+“\n”);
}
}
};
线程“main”java.lang.NullPointerException中的异常 位于java.util.regex.Matcher.getTextLength(未知源) 位于java.util.regex.Matcher.reset(未知源) 位于java.util.regex.Matcher。(未知源) 位于java.util.regex.Pattern.matcher(未知源) 位于com.ElwynDev.PastBinBot.ProxyScraper.scraproxy(ProxyScraper.java:24) 位于com.ElwynDev.PastBinBot.Main.Main(Main.java:17) 它看起来像这样:

ProxyHandle.get(searchUrl + searchId, null, Pages)

正在返回
null
。我不能告诉你为什么。我建议使用调试器来解决这个问题。

应用程序引发异常有很好的理由。请提供更多详细信息,例如异常类型、引发异常的代码行等。
ProxyHandle.get
返回什么?您应该检查ProxyHandle.get是否返回null。
ProxyHandle.get(searchUrl + searchId, null, Pages)