I’ve got a database that’s only available embedded in weirdo PDA format, and I need to harvest some data out of it
Here’s the idea:
Connect to my PDA via IP, display screen on PC
Run a macro, either on PC or PDA, to enter a number in a data entry field on the PDA, then click a button on screen
Record data output to image files
Repeat macro, entering the next number in series
Run OCR against the generated image files. Dump data into Excel spreadsheets based on screen positioning.
Is there a turnkey solution for this or similar?
Is there a term for this kind of project?
I’ve checked the EULA on the application, and it appears to be fully legal to do this. I’ve asked the vendor, and they weren’t willing to do the work involved in making the data into a PC-accessible form, noting that the whole thing is a beta product anyway. They’re overworked with a new product and some changes by their vendor, and indicated “we can’t do custom development now, maybe in a few months”. No objections raised to the idea of me doing it myself…
Let me know if this is incoherent, I’ll be glad to restate.
It’s potentially very difficult to do the ‘screen-scraping’ portion, which is a general term for taking pictures of the screen and trying to figure out what the data is (there are other types of screen-scraping, too, like trying to reconstruct structured data from the source of an HTML page, but starting with a bitmap of the screen is screen-scraping in the truest sense). It might end up being eaiser to reverse-engineer their weirdo db format and just write PC software to do what you want.
But i can tell you that the idea of sending keystrokes to the device and getting back screenshots is already a solved problem. Aside from being pretty easy to write Windows Mobile programs to do it for you, there are commercial products designed for doing stuff like this for testing purposes. One is Pocket Controller, of which there are various versions with varying levels of functionality. I think the “Pro” version is scriptable, which would help with automating your process.
If you’re a Win32 programmer, it’s pretty easy to write Windows Mobile software, too. In your position, I would probably try hooking up Visual Studio to my device and running the remote spy tool on the target application to see if you can do some slightly easier screen scraping by looking for specific window controls and reading the text out of them. You get the remote tools added to Visual Studio when you install the PocketPC SDK, which is downloadable from microsoft.com.
ETA: interestingly enough, the last product I worked on was Windows Mobile software, and one of the features I added was that in the debug version, there was actually a web server running on the pocketpc and you could hit URLs on that web server to send keys to the app and to get screenshots back. Sounds familiar…