LukeP Posted August 17, 2005 Share Posted August 17, 2005 Is it possible to retrieve or post a web page from AutoIt3? I would like to keep track of some results. The best way to do it would be to use post http to php web site, which would in turn update the database. Is it possible? thank you, Luke Link to comment Share on other sites More sharing options...
seandisanti Posted August 17, 2005 Share Posted August 17, 2005 Is it possible to retrieve or post a web page from AutoIt3?I would like to keep track of some results. The best way to do it would be to use post http to php web site, which would in turn update the database.Is it possible?thank you,Luke<{POST_SNAPBACK}>yes it is possible to do both. for retrieval, there is the quick and easy inetget() function (details in helpfile) for everything else with working with interacting with webpages, check out dale's ie.au3 (links are all over the forum or in his signature) Link to comment Share on other sites More sharing options...
LxP Posted August 18, 2005 Share Posted August 18, 2005 I would imagine that a POST request is also achievable using the beta's TCP...() functions. I would love to be able to make POST requests in this fashion -- I'll take a look at it one day unless someone beats me to it! Link to comment Share on other sites More sharing options...
w0uter Posted August 18, 2005 Share Posted August 18, 2005 i think its possible using DLL call and the internet calls from wininet.dll see MSDN on InternetConnect. My UDF's:;mem stuff_Mem;ftp stuff_FTP ( OLD );inet stuff_INetGetSource ( OLD )_INetGetImage _INetBrowse ( Collection )_EncodeUrl_NetStat_Google;random stuff_iPixelSearch_DiceRoll Link to comment Share on other sites More sharing options...
DaleHohm Posted August 18, 2005 Share Posted August 18, 2005 (edited) There are pretty straight-forward ways to do this with IE.au3Retrieves are very simple as you can navigate to a page and then read the data returned. There is a function in IE.au3 for retrieving the HTML in the body tab of the document - _IEBodyReadHTML. I have a function to get all of the HTML on a page ready for the next release, but in the meantime you can use $oIE.document.getElementsByTagName("HTML").item(0).outerHTMLThere are a couple of ways to Post. One is that the .Navigate method has a PostData parameter (but I don't support it directly in IE.au3). The other way to do it however is to create a webpage on the fly (you can use _IECreate and then _IEBodyWriteHTML) and create a form on that page with your own HTML -- then use IE.au3 functions to fill the form and submit it.This may or may not make a lot of sense straight up, but if you want to give it a go and ask for more help, this would make a good example.DaleEdit: I forgot that I also wanted to mention the INetGet command in AutoIt and the COM interface WinHttp.WinHttpRequest - search the forum for some examplesIs it possible to retrieve or post a web page from AutoIt3?I would like to keep track of some results. The best way to do it would be to use post http to php web site, which would in turn update the database.Is it possible?thank you,Luke<{POST_SNAPBACK}> Edited August 18, 2005 by DaleHohm Free Internet Tools: DebugBar, AutoIt IE Builder, HTTP UDF, MODIV2, IE Developer Toolbar, IEDocMon, Fiddler, HTML Validator, WGet, curl MSDN docs: InternetExplorer Object, Document Object, Overviews and Tutorials, DHTML Objects, DHTML Events, WinHttpRequest, XmlHttpRequest, Cross-Frame Scripting, Office object model Automate input type=file (Related) Alternative to _IECreateEmbedded? better: _IECreatePseudoEmbedded Better Better? IE.au3 issues with Vista - Workarounds SciTe Debug mode - it's magic: #AutoIt3Wrapper_run_debug_mode=Y Doesn't work needs to be ripped out of the troubleshooting lexicon. It means that what you tried did not produce the results you expected. It begs the questions 1) what did you try?, 2) what did you expect? and 3) what happened instead? Reproducer: a small (the smallest?) piece of stand-alone code that demonstrates your trouble Link to comment Share on other sites More sharing options...
LxP Posted August 19, 2005 Share Posted August 19, 2005 The IE automation library would be one way of achieving this, but might it be overkill for a function that a Telnet client can handle? Wouldn't this sort of thing therefore only require a couple TCP...() calls with a specially formatted string?I don't have much idea how to use those functions but a read of the help file suggests that this might be close:local $socket, $page local $data = "POST /form.cgi HTTP/1.1" & @CRLF _ & "User-Agent: AutoIt/3.1" & @CRLF _ & "Content-Type: application/x-www-form-urlencoded" & @CRLF _ & "Content-Length: 33" & @CRLF _ & @CRLF _ & "name1=value1&name2=value2&etc=etc" tcpStartup() $socket = tcpConnect("123.210.12.10", 80) tcpSend($socket, $data) ; response from server will be HTML + headers ; (not too sure how to get that back) ; $page = tcpRecv(...) tcpCloseSocket($socket) tcpShutdown()Am I very far off here? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now