如何从 php 页面(没有 json)获取数据?

我有这个网站(http://www.usadebtclock.com/us-debt-clock-widget.php),我想使用改造 2 从中获取数字(没有 JSON)到我的 android studio 应用程序并显示这个数字在文本视图中。我应该使用什么转换器工厂而不是 GsonConverterFactory?或者我怎样才能从这个页面获取数字到我的文本视图?


我尝试使用GsonConverterFactory.create()它,但它没有做出响应并显示来自onFailure方法的日志


这是MainActivity.class(使用无用的 GsonConverterFactory):


public class MainActivity extends AppCompatActivity {


    TextView tv;

    Button btn;


    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);


        tv = findViewById(R.id.textview1);

        btn = findViewById(R.id.btn);


        btn.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View v) {


                Retrofit retrofit = new Retrofit.Builder()

                        .baseUrl(DolgAPI.HOST)

                        .addConverterFactory(GsonConverterFactory

                                .create())

                        .build();


                DolgAPI apiService = retrofit.create(DolgAPI.class);


                Call<String> call = apiService.getDolg();


                call.enqueue(new Callback<String>() {

                    @Override

                    public void onResponse(Call<String> call, Response<String> response) {

                        tv.setText(response.body());

                        Log.d("MyLog", "Got it!");

                    }


                    @Override

                    public void onFailure(Call<String> call, Throwable t) {

                        Log.d("MyLog", "Error");

                    }

                });



            }

        });

    }

}

这是 Retrofit2 响应 API:


public interface DolgAPI {


    String HOST = "http://www.usadebtclock.com";


    @GET("us-debt-clock-widget.php")

    Call<String> getDolg();


}


慕容708150
浏览 204回答 3
3回答

守着星空守着你

我使用 WebView 显示该站点的价值它包含 JavaScript,所以我使用下一行来允许在应用程序中执行 Web 脚本:WebSettings&nbsp;webSettings&nbsp;=&nbsp;myWebView.getSettings(); webSettings.setJavaScriptEnabled(true);

人到中年有点甜

首先看起来像网站,如果它不能正常工作,因为它没有加载。但是,如果假设它正在工作并且您没有任何 GET/ 端点,您将收到整个 HTML 文档,并且您需要通过 html 标签对其进行解析以获取所需的文本。

POPMUISE

你应该使用 ResponseBodygetDolg()&nbsp;should&nbsp;return&nbsp;Call<ResponseBody>然后你必须解析html。这种格式的贷款回报<span&nbsp;id="debt-clock">$21,954,170,905,365.84</span>您可以使用正则表达式解析 html。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java