kontrolowanie opery własnym programem

w dziale Opera
humanista_ napisał(a):

Chciałbym się dowiedzieć, czy w ogóle możliwe jest, aby kontrolować operę za pomocą własnego programu, napisanego w jakimkolwiek języku.

Przez kontrolować rozumiem:
- otworzyć stronę o danym url
- przechwycić moment załadowania się strony
- pobrać źródło strony
- otworzyć link ze strony w tej samej lub nowej zakładce
- zmienić ustawienia (pobieranie obrazków, obsługa javy, cookies itp.)

Z góry dziękuję za odpowiedzi.

adas napisał(a):

Chyba Opera uruchamiana pod linuksem ma różne komendy, którymi można sterować operą. Ale czy to ci coś pomoże...

humanista_ napisał(a):

No tak, zapomniałem dodać, że pracuję na Windowsie XP SP2. Jeśli chodzi o Linuxa jestem zupełnie zielony. Jednak być może ta informacja się do czegoś przyda. Poszukam jakichś szczegółów. Dzięki.

Czy ktoś ma Operę i Linuxa i wie coś więcej o tych komendach?

Nie ukrywam jednak, że czekam głównie na informacje dotyczące Windowsa.

adas napisał(a):

A ja mam Operę i Linuksa wink Wpisałem w konsolę opera -help i wyskoczyła takie coś...

Usage: opera [options] url

  -newwindow                     open url in new window
  -newpage                       open url in new page (tab)
  -backgroundpage                open url in background page (tab)
  -fullscreen                    start in full screen mode
  -iconic                        start in iconic mode
  -geometry <geometry>           set geometry of toplevel window
  -remote <command>              send command to another Opera window
  -noraise                       no window raise when receiving remote commands
  -window <window id>            a remote opera window
  -windowname <window name>      a remote opera window with a symbolic name
  -restore                       restore default interface
  -nosession                     do not open saved window sessions or homepage
  -nowin                         do not open any document windows
  -nomail                        start opera without internal e-mail client
  -language <file>               use translation from specified file
  -binarydir <path>              location of version specific binaries
  -personaldir <path>            location of alternative '.opera' directory
  -display <displayname>         set the X display
  -fn <font>                     set the normal text font
  -bg <color>                    set the background color
  -fg <color>                    set the foreground color
  -visual TrueColor              use TrueColor visual on an 8-bit display
  -cmap                          use private color map on an 8-bit display
  -smallicon                     use a smaller icon image
  -debugdns                      simple debugging of asynchronous dns lookup
  -debugfont                     simple debugging of font handling
  -debugjava                     simple debugging of java
  -debugkeyboard                 simple debugging of keyboard events
  -debugplugin                   simple debugging of plugin handling
  -debugmouse                    simple debugging of mouse presses
  -disableinputmethods           disable input methods
  -restoreextensions             restore default file type extensions
  -postfix <name>                append name to WM_CLASS and WM_WINDOW_ROLE
  -version                       show version number
  -kioskhelp                     extra settings for kiosk mode operation
  -help or -h                    show this help

Remote commands:
  openURL()                      open "Go to" dialog box prompting for input
  openURL(url)                   open url in active window
  openURL(url,<destination>)     open url in destination <W|P|B>
  openFile(<destination>)        open file selector in destination <W|P>
  openM2(<destination>)          open M2 list view in destination <W>
  openComposer(<destination>)    open M2 composer in destination <W>
  addBookmark(url)               add url to bookmark list
  raise()                        raises the opera window
  lower()                        lowers the opera window

  <destination> Replace W: new-window, P: new-page, B: background-page

  A standalone url argument or '-newwindow', '-newpage', '-backgroundpage'
  or '-nowin' will disable '-remote' commands

Notes:
  * <geometry> format is: WIDTHxHEIGHT+XOFF+YOFF
  * '-window' and '-windowname' work for '-remote' and '-newwindow' commands
  * '-window' accepts hexadecimal (default) or a decimal argument
  * '-fullscreen' works when a new browser is launched
  * '-nowin' disables any url argument
  * '-windowname' will override '-newwindow' if a named window is located
  * '-noraise' works for remote commands that do not open a dialog box

humanista_ napisał(a):

Jeszcze raz dzięki. Tak jak się można było w sumie spodziewać, nie ma możliwości sprawdzenia, czy strona już się załadowała. Czyli niestety do niczego mi się to nie przyda. Jakieś inne pomysły?

Dopisane:

Ustawienia opery w zasadzie można zmieniać modyfikując odpowiednie pliki, więc to nie jest już problemem.

W końcu znalazłem pełną dokumentację pisania pluginów pod netscape 4.0 i po dość pobieżnym przejrzeniu jestem niestety rozczarowany. Co prawda mogę oczywiście otworzyć url, mogę nawet wykryć moment załadowania się strony, ale nie udało mi się ani zasymulować kliknięcia w link na jakiejś stronie, ani pobrać źródła strony. Czy jest ktoś, kto mógłby mnie upewnić, że wyżej wymienionych czynności wtyczka wykonać nie może?

janbar napisał(a):

A do czego Ci potrzebne cos takiego?

Pozdrawiam,

janbar.smile)

humanista_ napisał(a):

janbar: Do czego Ci potrzebna taka informacja?

Opis pobierania źródła strony przez wtyczkę jest niby tutaj, ale u mnie to nie działa. Całą noc zarwałem żeby rozwiązać ten problem i nic z tego nie wyszło.

janbar napisał(a):

Zeby moc znalezc rozwiazanie, wiec?

Pozdrawiam,

janbar.smile)

humanista_ napisał(a):

eee... nie rozumiem... napisałem przecież o co chodzi i co chcę osiągnąć tak precyzyjnie, jak się tylko dało... to do czego jest mi to potrzebne nie wnosi nic do tematu i w żaden sposób nie pomoże w rozwiązaniu problemu... jeśli się mylę to daj proszę jakiś przykład sytuacji, w której informacja do czego jest mi to potrzebne pomoże Ci w rozwiązaniu problemu...

adas napisał(a):

Spróbuj na angielskim forum zapytać - może będzie szybciej...

humanista_ napisał(a):

angielski znam na tyle, żeby rozumieć, niestety nie na tyle, żeby się nim posługiwać... w każdym razie udało mi się już pobrać źródło, teraz mam inne kłopoty, ale sądzę, że z czasem sobie z nimi poradzę... problem się na tyle wyspecjalizował, że nie pasuje już raczej do tego forum... w każdym razie dzięki bardzo za pomoc...

janbar napisał(a):

Originally posted by humanista_:

eee... nie rozumiem... napisałem przecież o co chodzi i co chcę osiągnąć tak precyzyjnie, jak się tylko dało... to do czego jest mi to potrzebne nie wnosi nic do tematu i w żaden sposób nie pomoże w rozwiązaniu problemu... jeśli się mylę to daj proszę jakiś przykład sytuacji, w której informacja do czego jest mi to potrzebne pomoże Ci w rozwiązaniu problemu...



Oczywiscie, ze sie mylisz. Podanie do czego Ci to jest potrzebne, pozwoli okreslic krotsza/prostsza droge do jego osiagniecia, o ile taka istnieje lub jestesmy w stanie ja wymyslic, niz Twoj sposob. Po drugie bardzo tajemniczo sie o tym wyrazasz, coz w tym co robisz takiego sekretnego? Czyzbys probowal zrobic trojana, ktory bedzie w stanie przejac kontrole nad czyjas przegladarka?

Pozdrawiam,

janbar.smile