passwd
Новичок
- Сообщения
- 30
- Репутация
- 0
Здравствуйте. Подскажите, как можно переделать этот же скрипт но под FF.au3?
В IE работает отлично, но в Firefox через FF.au3 пытался делать то же самое с помощью _FFCmd и чего-то не до конца всё понимаю. Заменяю Local $oImgs = _FFCmd(".images") а в ответ получаю:
Код:
Local $oIE = _IECreate("https://example.com")
Local $oImgs = _IEImgGetCollection($oIE)
;Доступ к буферу обмена нужно разрешить в настройках IE
For $oImg In $oImgs
If StringInStr($oImg.src, "logo.png") > 0 Then
$oCtlRange = $oImg.document.body.createControlRange()
$oCtlRange.addElement($oImg)
$oCtlRange.execCommand('Copy', False)
_ClipBoard_Open(0)
$hBitmap = _ClipBoard_GetDataEx($CF_BITMAP)
_ClipBoard_Close()
_GDIPlus_Startup()
$hImage = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap)
_GDIPlus_ImageSaveToFile($hImage, @DesktopDir & "\" & "logo.png")
_GDIPlus_BitmapDispose($hImage)
_GDIPlus_Shutdown()
EndIf
Next
В IE работает отлично, но в Firefox через FF.au3 пытался делать то же самое с помощью _FFCmd и чего-то не до конца всё понимаю. Заменяю Local $oImgs = _FFCmd(".images") а в ответ получаю:
Код:
_FFConnect: Browser: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0
__FFSendJavaScripts: Sending functions to FireFox .......... done
__FFSend: try{window.content.top.document.images}catch(e){'_FFCmd_Err';};
__FFRecv: [object HTMLCollection] - {0: {...}, 1: {...}, 2: {...}, 3: {...}, 4: {...}, 5: {...}, 6: {...}, ...}
"C:\Users\Venimus\Desktop\AutoIt v3 Script.au3" (14) : ==> Variable must be of type "Object".:
For $oImg In $oImgs
For $oImg In $oImgs^ ERROR