Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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 Jsoup天气工具_Java_Html_Jsoup - Fatal编程技术网

Java Jsoup天气工具

Java Jsoup天气工具,java,html,jsoup,Java,Html,Jsoup,早些时候我问了一个问题,我离我的主要目标更近了,但仍然没有达到我想要的目标。我当前的代码: try{ Connection formPage = Jsoup.connect("https://www.google.com/search?q=weather&oq=weather&aqs=chrome..69i57j69i61j69i60j0l3.3806j0j7&sourceid=chrome&ie=UTF-8"); formPage.timeout(

早些时候我问了一个问题,我离我的主要目标更近了,但仍然没有达到我想要的目标。我当前的代码:

       try{
Connection formPage = Jsoup.connect("https://www.google.com/search?q=weather&oq=weather&aqs=chrome..69i57j69i61j69i60j0l3.3806j0j7&sourceid=chrome&ie=UTF-8");
formPage.timeout(1000)
    .method(Connection.Method.GET)
    .userAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36")
    .execute();
            Document getformPage = formPage.get();
            //Element getformPage = formPage.getElementById("wob_t");
            System.out.println(getformPage.getElementById("wob_t"));
           //System.out.println(formPage.request().url());


        }catch(Exception exception){
            System.exit(0);
        }

返回一个空表达式。我希望它能反映当前的天气。任何帮助都将不胜感激。谢谢

您可以直接从
https://weather.com/en-IN/weather/today/l/18.60,73.71
其中,
18.60,73.71
将是需要详细信息的位置的坐标

您可以使用选择器标签
div.today\u nowcard-temp
来显示温度,也可以类似地显示其他细节

正如@r3dst0rm之前所建议的,您从尝试使用的google搜索页面检索的文档中没有详细信息


如果你需要的细节不存在,那么你必须尝试其他方法来获得你想要的结果,我建议你这样做。

你传递的id是否正确,我认为应该是
getformPage.getElementById(“wob_tm”)
AFAIK,谷歌只使用JavaScript来显示。因此,JSoup几乎毫无用处。你最好调查一下Selenium@r3dst0rm你检查过谷歌提供的
天气页面
的页面源代码了吗,OP需要的所有细节都在里面,可以使用Jsoup轻松地删除/解析。Jsoup将阅读页面中的所有详细信息来源:)@Rishaldevsingh因为我只是想知道我们从OP的URL中得到了什么,我使用了
try.Jsoup.org
,并在那里获取了给定的URL。显然没有结果HTML,因为我们会在浏览器中获取天气信息。@CalebDunham您已经用
getformPage.getElementsByClass(“wob_t”)
替换了方法
getformPage.getElementById(“wob_t”)
,这是一个很好的解决方案。这可能是公认的答案。获得了我的+1访问源代码,而不是从谷歌“复制”。