Skip to content

Instantly share code, notes, and snippets.

@Changsik00
Created August 30, 2017 08:43
Show Gist options
  • Save Changsik00/28dda0eeb948c1c62c974219bf3f7425 to your computer and use it in GitHub Desktop.
Save Changsik00/28dda0eeb948c1c62c974219bf3f7425 to your computer and use it in GitHub Desktop.
package com.study.lowmans.myapplication;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class MainActivity extends AppCompatActivity {
private String URL = "http://ssyoutube.com/watch?v=2JUi2CNPG4w";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final WebView browser = (WebView) findViewById(R.id.webView);
browser.getSettings().setJavaScriptEnabled(true);
browser.addJavascriptInterface(new MyJavaScriptInterface(), "HTMLOUT");
browser.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
browser.loadUrl("javascript:window.HTMLOUT.processHTML('<head>'+document.getElementsByTagName('html')[0].innerHTML+'</head>');");
}
});
browser.loadUrl(URL);
}
private class MyJavaScriptInterface {
@JavascriptInterface
@SuppressWarnings("unused")
public void processHTML(String html) {
Document doc = Jsoup.parse(html);
Elements links = doc.select("a");
for (Element link : links) {
String linkHref = link.attr("href");
String download = link.attr("download");
String linkText = link.text();
if (linkHref.startsWith("http://r") && linkText.equals("Download")) {
Log.i("#@#", "linkHref : " + linkHref);
Log.i("#@#", "download : " + download);
}
}
}
}
}
@Changsik00
Copy link
Author

compile 'org.jsoup:jsoup:1.10.3'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment