| ako by sa mohol parsovat odkaz? (nie na serveri ale cez prikazovy riadok...) (snazim sa spravit bota :/)
respektive clea otazka znie...
vyparsovat odkaz
<a href="[link]">example</a>
ide o to ze by som chcel stiahnut cely zdrojak stranky vyparsovat odkazy a skusat php a javascript injekciu...(skor to php...)
potom triedit ci vznikla chyba alebo sa injektovany kod spravil...
ale podstata tohto vlakna je ako parsovat odkaz...
respektive ako povedat php daj mi do premenneej text medzi uvodzovkami.
(odpovědět) | PHP parsovanie | 142.32.208.231/142.26.22.* | 1.11.2007 17:24 |
|
|
|
| Zrovna včera jsem si napsal jednoduchý parser v Pythonu. Jestli chceš, můžeš mě kontaktovat na ICQ a já ti pošlu zdroják, nebo ti hodím exe.
ps: samozřejmě, pokud ti jde jenom o <a>, musel bych to ještě trochu upravit.. (odpovědět) | |
|
|
| v Pythonu je tuším speciální knihovna, která velmi usnadňuje stahování stránek přes http a funkce na práci s němi
----------
Get enlightened! (odpovědět) | |
|
|
| mr.Crow: Tušíš správně. Ke stahování se dá použít buď urllib, nebo httplib. Pro parsovani je tam modul HTMLParser a BeautifulSoup.
Ja jsem si to ale chtel napsat sam :D Jedna for smycka a 24 radku kodu resi muj problem presne tak jak potrebuju a jeste mam radost ze jsem na to prisel sam :D (odpovědět) | |
|
|
| Tady je muj univerzální webcrawler: [link]
Nez zacnes, mel bys vedet, co je php-cli: [link] [link]
Pokud aspon trochu znas bash-skripty, nebo aspon bataky, umis v php pracovat se STDINem a STDOUTem, tak si budes moct i psat plug-iny v podobe filtru do kterejch presmerujes vystup crawleru pomoci pipy.
Ja psal pluginy na parsovani mailu, hledani moznejch RFI zranitelnosti a k jednomu z mnoha predchozich verzi dodatecnej URL parser.
prejmenuj ho na .php
pustis ho:
./crawler.php
kdyz si napises plugin/filtr, tak ho pustis takhle:
./crawler.php | ./plugin.php
Bohuzel ma par bugu, za ktere muze php: [link]
Budu casem dopisovat wrapper, ktery ten bug opravi.
BTW Srdce celyho zdrojaku je tenhle preg:
'(http:\/\/[_a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4} \/{1}
[-_~&=\ ?\.a-z0-9\/]*)'
----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link] (odpovědět) | Harvie | | | 283782978 | 1.11.2007 19:18 |
|
|
|
| Uz sem to predelal.
Tak ze kdyz si stahnes curl (ne knihovnu ale program), tak mas plne funkcni web crawler / spider / bot, nebo jak tomu řikáš.
----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link] (odpovědět) | Harvie | | | 283782978 | 1.11.2007 22:27 |
|
|
|
| A dalsi dulezitou veci je taky dobrej blacklist ;D
$eregi_url_blacklist = array(
'(W3\.org|W3C)', //Hell knows...
'(shop|xxx|porn|lesbian|hot)', //Commercial sites
'(google|209.85.135.104|amazon.com|youtube. com)', //Big sites
'(seznam.cz|centrum.cz|atlas.cz|zoznam.sk|q uick.cz)', //Big local sites
'.\.(css|ico|gif|jpg|png|bmp|cgi|js|vbs)', //Misc. webpage content
'.\.(avi|mpg|mpeg|mov|wmv|wm|mp3|ogg|wma)', //Multimedia files
'.\.(pdf|swf|flv|cfm)', //Other text files
'.\.(exe|zip|rar|gz|bz|bz2|tar)' //Big and binary files
);
----------
Harvie's blog: [link] g33k-shop: [link] fs: [link]
Registered GNU/LINUX user #468114 [link] (odpovědět) | Harvie | | | 283782978 | 1.11.2007 19:20 |
|
|
|
| Harvie presne od teba som cakal rady :P
diks... (odpovědět) | ph | 207.81.106.* | 1.11.2007 23:43 |
|
|
|
| este mi povedz ako si prisiel kurva na tento riadok :D
preg_match_all('(http:\/\/[_a-zA-Z0-9\.\-]+ \.[a-zA-Z]{2,4}\/{1}
[-_~&=\ ?\.a-z0-9\/]*)',htmlspecialchars_decode($pa ge), $new_urls); (odpovědět) | ph | 207.81.106.* | 1.11.2007 23:46 |
|
|
|
| potom pouzivam backompile na "prikazovu riadku"
mam v jednej zlozke [script.exe, script.php] a len upravujem script.php a nemusim kompilovat 2 krat... len zmenim... a mam
urcite to znas a nepouzivas to lebo to nesplnuje tvoje poziadavky alebo co.... (odpovědět) | ph | 207.81.106.* | 1.11.2007 23:49 |
|
|
|