Search in sources :

Example 56 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class HeavenManga method getMangas.

@Override
public ArrayList<Manga> getMangas() throws Exception {
    String source = getNavigatorAndFlushParameters().get("http://heavenmanga.com/");
    source = getFirstMatch("<span>Lista Completa(.+)", source, "Error al obtener la lista");
    Pattern p = Pattern.compile("<li class=\"rpwe-clearfix\"><a href=\"(.+?)\" title=\"(.+?)\"", Pattern.DOTALL);
    Matcher m = p.matcher(source);
    ArrayList<Manga> mangas = new ArrayList<>();
    while (m.find()) {
        mangas.add(new Manga(HEAVENMANGACOM, m.group(2), m.group(1), true));
    }
    return mangas;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Example 57 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class JapScan method search.

@Override
public ArrayList<Manga> search(String search) throws Exception {
    String source = getNavigatorAndFlushParameters().get(HOST + "/mangas/");
    Pattern pattern = Pattern.compile("<a href=\"(/mangas/[^\"].+?)\">(.+?)</a>", Pattern.DOTALL);
    Matcher matcher = pattern.matcher(source);
    ArrayList<Manga> mangas = new ArrayList<>();
    while (matcher.find()) {
        if (matcher.group(2).toLowerCase().contains(URLEncoder.encode(search.toLowerCase(), "UTF-8"))) {
            Manga manga = new Manga(getServerID(), matcher.group(2), HOST + matcher.group(1), false);
            mangas.add(manga);
        }
    }
    return mangas;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Example 58 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class KissManga method search.

@Override
public ArrayList<Manga> search(String term) throws Exception {
    // make use of AdvanceSearch, more data is then needed
    Navigator nav = getNavigatorAndFlushParameters();
    // do not hide Doujinshi in result
    nav.addHeader("Cookie", "vns_doujinshi=1; ");
    nav.addPost("keyword", URLEncoder.encode(term, "UTF-8"));
    nav.addPost("type", "Manga");
    String source = nav.post(HOST + "/Search/SearchSuggest");
    source = source.replaceAll("<\\*span>", "");
    ArrayList<Manga> searchList = new ArrayList<>();
    Pattern p = Pattern.compile(PATTERN_SEARCH, Pattern.DOTALL);
    Matcher m = p.matcher(source);
    while (m.find()) {
        searchList.add(new Manga(getServerID(), m.group(2), m.group(1), false));
    }
    return searchList;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) Navigator(ar.rulosoft.navegadores.Navigator) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Example 59 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class KissManga method getMangasSource.

private ArrayList<Manga> getMangasSource(String source) {
    ArrayList<Manga> mangas = new ArrayList<>();
    Pattern p = Pattern.compile(PATTERN_MANGA, Pattern.DOTALL);
    Matcher m = p.matcher(source);
    while (m.find()) {
        Manga manga = new Manga(getServerID(), m.group(3), m.group(2), false);
        manga.setImages(m.group(1));
        mangas.add(manga);
    }
    return mangas;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Example 60 with Manga

use of ar.rulosoft.mimanganu.componentes.Manga in project MiMangaNu by raulhaag.

the class LeoManga method getMangasFiltered.

@Override
public ArrayList<Manga> getMangasFiltered(int[][] filters, int pageNumber) throws Exception {
    String web;
    web = HOST + "/directorio-manga?pagina=" + pageNumber;
    web += valType[filters[0][0]];
    web += valDemographic[filters[1][0]];
    if (filters[2].length > 0) {
        String gen = "&genero=";
        for (int i = 0; i < filters[2].length; i++) {
            gen += valGenre[filters[2][i]] + "|";
        }
        web += gen.substring(0, gen.length() - 1);
    }
    web += valStatus[filters[3][0]];
    web += valOrder[filters[4][0]];
    String data = getNavigatorAndFlushParameters().get(web);
    ArrayList<Manga> mangas = new ArrayList<>();
    Pattern p = Pattern.compile("<a href=\"(/manga/.+?)\".+?src=\"(.+?)\" alt=\"(.+?)\"", Pattern.DOTALL);
    Matcher m = p.matcher(data);
    while (m.find()) {
        Manga manga = new Manga(getServerID(), m.group(3), HOST + m.group(1), false);
        manga.setImages(HOST + m.group(2).replace("thumb-", ""));
        mangas.add(manga);
    }
    return mangas;
}
Also used : Pattern(java.util.regex.Pattern) Matcher(java.util.regex.Matcher) ArrayList(java.util.ArrayList) Manga(ar.rulosoft.mimanganu.componentes.Manga)

Aggregations

Manga (ar.rulosoft.mimanganu.componentes.Manga)61 ArrayList (java.util.ArrayList)48 Matcher (java.util.regex.Matcher)40 Pattern (java.util.regex.Pattern)40 JSONObject (org.json.JSONObject)6 View (android.view.View)5 Navigator (ar.rulosoft.navegadores.Navigator)5 Chapter (ar.rulosoft.mimanganu.componentes.Chapter)4 AsyncAddManga (ar.rulosoft.mimanganu.utils.AsyncAddManga)4 JSONArray (org.json.JSONArray)4 MenuInflater (android.view.MenuInflater)3 ServerBase (ar.rulosoft.mimanganu.servers.ServerBase)3 List (java.util.List)3 Bundle (android.os.Bundle)2 RecyclerView (android.support.v7.widget.RecyclerView)2 OnClickListener (android.view.View.OnClickListener)2 AdapterView (android.widget.AdapterView)2 OnItemClickListener (android.widget.AdapterView.OnItemClickListener)2 ListView (android.widget.ListView)2 MangasRecAdapter (ar.rulosoft.mimanganu.adapters.MangasRecAdapter)2