Forum » Programiranje » Firefox, Greasemonkey - oznaciti doloceni torrent site v txt kot ze obiskan - in displayati kasneje
Firefox, Greasemonkey - oznaciti doloceni torrent site v txt kot ze obiskan - in displayati kasneje
Vapo1 ::
ok - zdaj sem ugotovil kako lahko z exstensionom zapisujem fajl na disku in berem (v Fierefoxu)
ok... zdaj pa naprej... kaj zares hocem...
hocem imeti online content povezan z offlien bazo podatkov(simple txt fajl) ... tako nekako
recimo simple primer....
hocem na torrent tracker siteu oznaciti, da sem nek torrent ze dljal ali si ga oznaciti, da ga se hocem dljat itd....
torrent site ima recimo take urlje
http://mojblink.com/imeInNaslovTorrenta...
ali pa partis
http://www.partis.si/torrent/podrobno/1...
skratka notri je simple unikatna steviljka... (t12345 ... oziroma 12345)... in zdaj bi rad z grasemonkeyom naredil da prepozna da sem na torrent siteu in, da mi displaya kaksen gumb ki pozene funkcijo od mojega ekstensiona -
-gresemonkey sicer sam ne more pisati na disk... ampak lahko pa pozene katerokoli funkcijo od extensiona ketergakoli ....
torej v svojem extensionu naredim funkcije AddToDatabase(stevilka) in checkIfIsAlreadiInDatabase(stevilka) ...
in potem ko kliknem na greasemonkey gumb doda torrent identifikacijsko stevilko v txt file ...
.... in kadar greasemonkey zazna, da sem na torrent siteu se pozene checkIfIsAlreadyInDatabase(stevilka), da preveri ce je torrent steviljka ze v txt fajlu - in ce je, doda na site nekaj, s cimer je ocitno, da, in kako, sem oznacil ta site (neko sliko zelene kljukice recimo)
in tako si lahko naredim kategorije in oznacim torrente kot "ze downloadane".. kot "ze pregledane da me ne zanimajo"... kot da "jih moram se dljat".. itd....
potem pa moram se narediti da ko recimo searcham torrente na temu siteu greasemonkey pogleda vse linke in zazna kateri linki se ze v txt fajlu in zraven linkov ze doda oznako....
recimo en greasemonkey extension prepozan rapidshare linke in preveri ce fajli so available na rapidshare sajtu in ce so zraven doda kljukico zeleno ce pa niso pa rdeci x,,,,
tule:
http://userscripts.org/scripts/show/9467
potem je tudi super greasemonkey scrip ki ti sam dlja rapidshare fajle .. imenuje se Rapidshare AutoWait ..zelo priporocam
uglavnem ce mi rata takole povezati lokalni txt z urlji v firefoxu si lahko oznacujem marsikaj ... torrente... topice na forumih recimo ... karkoli po katerihkoli svojih paramtetih ... kjerkoli kjer je veliko podatkov in kjer user interface od sitea ne omogoca tega kar bi hotel
var file = Components.classes["@mozilla.org/file/local;1"]. createInstance(Components.interfaces.nsILocalFile); file.initWithPath("C:\\SteviljkeOznacenihTorrentov.txt"); var line = {}, lines = [], hasmore; do { hasmore = istream.readLine(line); lines.push(line.value); } while(hasmore); istream.close(); alert(lines);
ok... zdaj pa naprej... kaj zares hocem...
hocem imeti online content povezan z offlien bazo podatkov(simple txt fajl) ... tako nekako
recimo simple primer....
hocem na torrent tracker siteu oznaciti, da sem nek torrent ze dljal ali si ga oznaciti, da ga se hocem dljat itd....
torrent site ima recimo take urlje
http://mojblink.com/imeInNaslovTorrenta...
ali pa partis
http://www.partis.si/torrent/podrobno/1...
skratka notri je simple unikatna steviljka... (t12345 ... oziroma 12345)... in zdaj bi rad z grasemonkeyom naredil da prepozna da sem na torrent siteu in, da mi displaya kaksen gumb ki pozene funkcijo od mojega ekstensiona -
-gresemonkey sicer sam ne more pisati na disk... ampak lahko pa pozene katerokoli funkcijo od extensiona ketergakoli ....
torej v svojem extensionu naredim funkcije AddToDatabase(stevilka) in checkIfIsAlreadiInDatabase(stevilka) ...
in potem ko kliknem na greasemonkey gumb doda torrent identifikacijsko stevilko v txt file ...
.... in kadar greasemonkey zazna, da sem na torrent siteu se pozene checkIfIsAlreadyInDatabase(stevilka), da preveri ce je torrent steviljka ze v txt fajlu - in ce je, doda na site nekaj, s cimer je ocitno, da, in kako, sem oznacil ta site (neko sliko zelene kljukice recimo)
in tako si lahko naredim kategorije in oznacim torrente kot "ze downloadane".. kot "ze pregledane da me ne zanimajo"... kot da "jih moram se dljat".. itd....
potem pa moram se narediti da ko recimo searcham torrente na temu siteu greasemonkey pogleda vse linke in zazna kateri linki se ze v txt fajlu in zraven linkov ze doda oznako....
recimo en greasemonkey extension prepozan rapidshare linke in preveri ce fajli so available na rapidshare sajtu in ce so zraven doda kljukico zeleno ce pa niso pa rdeci x,,,,
tule:
http://userscripts.org/scripts/show/9467
potem je tudi super greasemonkey scrip ki ti sam dlja rapidshare fajle .. imenuje se Rapidshare AutoWait ..zelo priporocam
uglavnem ce mi rata takole povezati lokalni txt z urlji v firefoxu si lahko oznacujem marsikaj ... torrente... topice na forumih recimo ... karkoli po katerihkoli svojih paramtetih ... kjerkoli kjer je veliko podatkov in kjer user interface od sitea ne omogoca tega kar bi hotel
- spremenilo: Vapo1 ()
Vapo1 ::
evo prvi problem.. nikakor ne morem appendat txt fajlu - v mojem firefox extensionu
nevem zakaj append ne dela.... kao pri stream.init das flag 0x10 in naj bi bilo append.... ampak vedno overwrita!! ni mi jasno zakaj...
tudi poizkusi z "seekstream" mi niso uspeli
ce komu uspe append... ce mogoce pozna kaksen drugi nacin za appendat text... hvala
function AppendToFIle(){ var aFile = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); aFile.initWithPath( "c:\\MojOutFirefox.txt" ); //aFile.createUnique( Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 600); var stream = Components.classes["@mozilla.org/network/safe-file-output-stream;1"]. createInstance(Components.interfaces.nsIFileOutputStream); //stream.init(aFile, 0x04 | 0x08 | 0x20, 0600, 0); // write, create, truncate stream.init(aFile, 0x02 | 0x10, 0600, 0); //0x10 naj bi bil ukaz za Append... ampka ne dela¨!!!1 //var seekstream = stream.QueryInterface(Components.interfaces.nsISeekableStream); //seekstream.seek(0x02, 0); // move to end of file mojText = "aaa"; stream.write(mojText , mojText.length); mojText = "BBB"; stream.write(mojText , mojText.length); if (stream instanceof Components.interfaces.nsISafeOutputStream) { stream.finish(); } else { stream.close(); } }
nevem zakaj append ne dela.... kao pri stream.init das flag 0x10 in naj bi bilo append.... ampak vedno overwrita!! ni mi jasno zakaj...
tudi poizkusi z "seekstream" mi niso uspeli
ce komu uspe append... ce mogoce pozna kaksen drugi nacin za appendat text... hvala
Zgodovina sprememb…
- spremenilo: Vapo1 ()
Vapo1 ::
ok.. ratalo appendat...
kodo sem nekje skopiral iz neta
vse je isto samo da se nekako file objekt deklarira drugace (nic jasno meni)
aja pa se to... tale new line character "\n" ... ce odprem fajl potem v textpadu lepo zazana linije... v notepadu pa ne ... kaksen escape character uporabim da bo tudi v notepadu delalo?
kodo sem nekje skopiral iz neta
vse je isto samo da se nekako file objekt deklarira drugace (nic jasno meni)
function AppendToFile(){ var file = Components.classes ["@mozilla.org/file/directory_service;1"] .getService(Components.interfaces.nsIProperties) .get("Home", Components.interfaces.nsIFile); alert(file.path); file.append("phishlog.txt"); var foStream = Components.classes ["@mozilla.org/network/file-output-stream;1"] .createInstance(Components.interfaces.nsIFileOutputStream); foStream.init(file, 0x02 | 0x08 | 0x10, 0666, 0); var converter = Components.classes ["@mozilla.org/intl/converter-output-stream;1"] .createInstance(Components.interfaces.nsIConverterOutputStream); converter.init(foStream, "UTF-8", 0, 0); var data="blabla\n"; converter.writeString(data); converter.close(); }
aja pa se to... tale new line character "\n" ... ce odprem fajl potem v textpadu lepo zazana linije... v notepadu pa ne ... kaksen escape character uporabim da bo tudi v notepadu delalo?
Vapo1 ::
ok.. naslednja stvar je addat button z greasemonkey...
nekaj sem probaval.. in mi je uspelo addat button...
ampak zdajnisem vec suguren ce ej zares mozno v greasemonkey skripti pognati funkcijo od nekega extensiona...
ce kdo ve ali se da ali ne... in kako... bi bilo super
drugace pa mije uspesno ratalo z "CustomButtons2" extensionom pognati funkcijo AppendToDB v mojemu extensionu....
torej lahko magari naredim "custom button" ki zapise url v txt
ampak se vedno bo problem ker mora greasemonkey ko se stran nalozi pognati funkcijo v mojem extensionu ki searcha txt fajl in preveri ce je zabelezen trenutni url notri
razen ce naredim tako da zaobidem greasemonkey v celoti ... in da moj extension vsakic ko se nalozi page preverice je pravi domain (od torrent sitea recimo) in potem searcha txt fajl ce je trenutni url (torej trenutni torrent) zabelezen notri...
hmmmm... kako pa naredim to da moj extension vsakic ko se naloada katerikoi page preveri karkoli ze ima za preveriti ??... morda moram kaksen hook narediti ... "hook.onDocumentLoad... run moja funkcija"
hvala za kakersen koli insight
nekaj sem probaval.. in mi je uspelo addat button...
ampak zdajnisem vec suguren ce ej zares mozno v greasemonkey skripti pognati funkcijo od nekega extensiona...
ce kdo ve ali se da ali ne... in kako... bi bilo super
drugace pa mije uspesno ratalo z "CustomButtons2" extensionom pognati funkcijo AppendToDB v mojemu extensionu....
torej lahko magari naredim "custom button" ki zapise url v txt
ampak se vedno bo problem ker mora greasemonkey ko se stran nalozi pognati funkcijo v mojem extensionu ki searcha txt fajl in preveri ce je zabelezen trenutni url notri
razen ce naredim tako da zaobidem greasemonkey v celoti ... in da moj extension vsakic ko se nalozi page preverice je pravi domain (od torrent sitea recimo) in potem searcha txt fajl ce je trenutni url (torej trenutni torrent) zabelezen notri...
hmmmm... kako pa naredim to da moj extension vsakic ko se naloada katerikoi page preveri karkoli ze ima za preveriti ??... morda moram kaksen hook narediti ... "hook.onDocumentLoad... run moja funkcija"
hvala za kakersen koli insight
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Davčne blagajne (strani: 1 2 3 4 … 24 25 26 27 )Oddelek: Programiranje | 332044 (72047) | Macketina |
» | [JAVA] HTTPS clientOddelek: Programiranje | 3172 (1902) | peterv6i |
» | [Java]Shranjevanje/Branje nastavitev za povezavo z podatkovno bazoOddelek: Programiranje | 2609 (2383) | KernelPanic |
» | firefox extension: kako prebrati datoteko iz diskaOddelek: Programiranje | 946 (828) | Vapo1 |
» | [baze] Povezava do slike ali BLOB?Oddelek: Programiranje | 1655 (1452) | BlueRunner |