[ Príspevkov: 9 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
NapísalOffline : 12.03.2013 19:34 | Java

Mám takýto problém :
Mám načítať URL a na danej stránke zistiť a vypísať všetky ďalšie odkazy vynechávajúc odkazy typu mailto: a javascript: číže ak tam bude na stránke niečo takéto :

Kód:
<a href="http://www.pcforum.sk/asrock-extreme-6-vt148466.html#p1377741"><img src="http://www.pcforum.sk/styles/white/imageset/icon_topic_latest.gif" alt="Zobrazenie posledných príspevkov" title="Zobrazenie posledných príspevkov" /></a>


tak z toho vyhrabať každý jeden odkaz typu :
Kód:
http://www.pcforum.sk/asrock-extreme-6-vt148466.html

atď :)

Nejaký návrh ako to urobiť ? Momentálne som v stave kedy mám celý viditeľný zdrojový kód ktorý načítam po riadkoch do arraylistu ale ďalej neviem. Ako zistiť či sa niekde nachádza http:// a potom vypísať celý link ?


ED: nepotrebujem kontrolovať či niektorý link je živý/ mŕtvy stačí ho vypísať
Vďaka za odpovede :)


_________________
rMBP 13 2015
iPhone 7
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3
NapísalOffline : 12.03.2013 20:36 | Java

Jednoducho sa to dá s regulárnymi výrazmi a objektami Pattern a Matcher. Ak nevieš, čo sú to reg. výrazy, skús si o nich niečo prečítať a ak nepochopíš, buď sa spýtaj tu, alebo skús spôsbo č. 2 :)

Spôsob č. 2:
Nájdeš v strngu indexOf("http://") a potom od tej pozície prechádzaš po znakoch až narazíš na medzeru/úvodzovku. A toto si uložíš.
Podobne môžeš hľadať aj iné odkazy, ktoré nemusia začínať http://, ale napr. www., príp. podľa html tagov src="odkaz"


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
Napísal autor témyOffline : 12.03.2013 21:01 | Java

Presne ten názov regulárne výrazy bol spomenutý :D Mrknem na to :)

Prvá otázka na niečo som narazil ako zapísať aby mi to hľadalo tieto výrazy typu :

http://* ? Mám tam niečo nakódené ale vyhľadávami mi to iba http:// presne :D


_________________
rMBP 13 2015
iPhone 7
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
Napísal autor témyOffline : 12.03.2013 21:20 | Java

Okej pohoda na niečo som kápol :D Uvažujme nejaký random kód hej :

Kód:
       public static void main(String[] args) {

       // String URL = "https://localhost:8080/sbs/01.00/sip/dreamworks/v/01.00/cui/print/$fwVer/{$fwVer}/$lang/en/$model/{$model}/$region/us/$imageBg/{$imageBg}/$imageH/{$imageH}/$imageSz/{$imageSz}/$imageW/{$imageW}/movie/Kung_Fu_Panda_two/categories/3D_Pix/item/{item}/_back/2?$uniqueID={$uniqueID}";
        String nova = "</div>\n" +
"<div id=\"wrapfooter\">\n" +
"  <br style=\"clear: both;\" />\n" +
"   <span class=\"copyright\">Powered by <a href=\"http://www.phpbb.com/\" target=\"_phpbb\" rel=\"nofollow\">phpBB</a> 3.x.x &copy; 2005 - 2013 <a href=\"http://www.pcforum.sk/\">PCforum</a>, webhosting by <a href=\"http://www.websupport.sk/\" target=\"_websupport\" rel=\"nofollow\">WebSupport</a>, edited by <a href=\"http://jan.fecik.sk/\">JanoF</a> | <a href=\"http://jan.fecik.sk/blog/zivot-studenta-na-vysokej-skole.html\" title=\"Život študenta\"><strong>Život študenta</strong></a></span><br /><br />\n" +
"</div>\n" +
"</td></tr></table>\n" +
"</div>\n" +
"</body>\n" +
"</html>";
       
        Pattern pattern = Pattern.compile(".*http://.*");
        Matcher matcher = pattern.matcher(nova);
        if (matcher.find()) {
            System.out.println(matcher.group(0)); //prints /{item}/
        } else {
            System.out.println("Match not found");
        }


    }


Jeho výstup je :
Kód:
<span class="copyright">Powered by <a href="http://www.phpbb.com/" target="_phpbb" rel="nofollow">phpBB</a> 3.x.x &copy; 2005 - 2013 <a href="http://www.pcforum.sk/">PCforum</a>, webhosting by <a href="http://www.websupport.sk/" target="_websupport" rel="nofollow">WebSupport</a>, edited by <a href="http://jan.fecik.sk/">JanoF</a> | <a href="http://jan.fecik.sk/blog/zivot-studenta-na-vysokej-skole.html" title="Život študenta"><strong>Život študenta</strong></a></span><br /><br />


Je to celkom nepriehľadné ale teoreticky celkom krok vpred :P teraz by som z toho chcel vyseparovať len linky samotne :loony:


_________________
rMBP 13 2015
iPhone 7
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3
NapísalOffline : 12.03.2013 21:23 | Java

Skús niečo ako
Kód:
Pattern.compile("http://[^ \\"]+")


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
Napísal autor témyOffline : 12.03.2013 21:27 | Java

To je nejaký divný pattern ktorý mi ani neprejde :D


_________________
rMBP 13 2015
iPhone 7
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3
NapísalOffline : 12.03.2013 21:30 | Java

Tak asi tam mám naviac ten backslash, daj
Pattern.compile("http://[^ \"]+")


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
Napísal autor témyOffline : 12.03.2013 21:36 | Java

Ah teraz to prešlo :D Už iba zdrojový kód podelím do array listu a skúsim to pre celý web :)


_________________
rMBP 13 2015
iPhone 7
Offline

Užívateľ
Užívateľ
Java

Registrovaný: 05.04.11
Príspevky: 1693
Témy: 50 | 50
Bydlisko: Žilina, Pop...
Napísal autor témyOffline : 12.03.2013 21:43 | Java

Okej už to beží aj :

Kód:

http://www.phpbb.com/

http://www.pcforum.sk/

http://www.websupport.sk/

http://jan.fecik.sk/blog/zivot-studenta-na-vysokej-skole.html


Díky moc :D


_________________
rMBP 13 2015
iPhone 7
 [ Príspevkov: 9 ] 


Java



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Rozdiel medzi Java Standard a Java EE

v Assembler, C, C++, Pascal, Java

1

905

02.04.2014 12:41

XOLOO

V tomto fóre nie sú ďalšie neprečítané témy.

dobre java navody a nova tema JAVA

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Assembler, C, C++, Pascal, Java

35

5560

09.03.2009 17:14

tlacitko Enter

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA - java.lang.NullPointerException

v Assembler, C, C++, Pascal, Java

1

1127

04.01.2010 17:05

emigrate

V tomto fóre nie sú ďalšie neprečítané témy.

Java

v Assembler, C, C++, Pascal, Java

10

704

31.10.2011 17:29

walther

V tomto fóre nie sú ďalšie neprečítané témy.

java

v Assembler, C, C++, Pascal, Java

2

852

07.06.2012 21:52

lukac

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA

v Assembler, C, C++, Pascal, Java

2

845

13.02.2018 1:08

raketar

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA

v Assembler, C, C++, Pascal, Java

2

454

25.11.2012 20:24

nisanick

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA

v Assembler, C, C++, Pascal, Java

6

1282

14.08.2007 23:52

etki

V tomto fóre nie sú ďalšie neprečítané témy.

Java

v Assembler, C, C++, Pascal, Java

3

525

17.02.2012 13:14

jarrro

V tomto fóre nie sú ďalšie neprečítané témy.

Java

v Assembler, C, C++, Pascal, Java

1

357

15.04.2013 16:23

p4tooo

V tomto fóre nie sú ďalšie neprečítané témy.

java

v Assembler, C, C++, Pascal, Java

3

577

26.10.2010 0:17

TommyHot

V tomto fóre nie sú ďalšie neprečítané témy.

I:java

v Ostatné

0

440

27.05.2017 18:15

radoDM

V tomto fóre nie sú ďalšie neprečítané témy.

Java builder

v Assembler, C, C++, Pascal, Java

7

779

12.04.2010 22:33

rooobertek

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA - vstup

v Assembler, C, C++, Pascal, Java

14

1154

15.10.2010 15:13

Johnnny

V tomto fóre nie sú ďalšie neprečítané témy.

Java casovac

v Assembler, C, C++, Pascal, Java

1

498

05.02.2013 11:21

XOLOO

V tomto fóre nie sú ďalšie neprečítané témy.

Java hry

v Počítačové hry

22

1492

03.04.2008 18:58

Flety



© 2005 - 2024 PCforum, edited by JanoF