Copy a WEB page that is outside the screen

Just starting out? Need help? Post your questions and find answers here.
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Copy a WEB page that is outside the screen

Post by jak64 »

Hello everyone,

I sometimes have weird questions...But I'm giving it a go!

My little DELL Latitude 7290 laptop has a resolution of 1366 x 768 pixels but that's enough for me.

Question :

1) With Purebasic, I load a WEB page and move it off the screen with the instructions you gave me (SetWindowPos_(hwnd, #HWND_TOPMOST, 1366, 0, 1366, 768, #SWP_NOZORDER).

Is it possible, when the window is outside the screen, to do a CTRL + A followed by a CTRL + C, in Purebasic, with the corresponding commands that you indicated to me, while this WEB window is off screen?

Thank you for your help
infratec
Always Here
Always Here
Posts: 7706
Joined: Sun Sep 07, 2008 12:45 pm
Location: Germany

Re: Copy a WEB page that is outside the screen

Post by infratec »

Why you don't simply try it :?:

As long as the window have the focus ... it should work.
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Re: Copy a WEB page that is outside the screen

Post by jak64 »

Hello infratec,

I tested it but apparently it doesn't work.

If I position the cursor outside the screen, for example in 2000, 300 while my screen is 1366 x 768, the cursor is positioned to the right of my screen, therefore in 1366 and not in 2000
User avatar
Kuron
Addict
Addict
Posts: 1626
Joined: Sat Oct 17, 2009 10:51 pm
Location: Pacific Northwest

Re: Copy a WEB page that is outside the screen

Post by Kuron »

from ChatGPT:

Javascript method:

This code will collect all the text content on the page and copy it to your clipboard using the copy() function.

Code: Select all

var allText = "";
var elements = document.getElementsByTagName('*');
for (var i = 0; i < elements.length; i++) {
    var element = elements[i];
    if (element.nodeType === Node.TEXT_NODE) {
        allText += element.textContent;
    }
}
copy(allText);



PureBasic method:

Yes, you can use PureBasic to create a program that retrieves and copies the text content of a web page, even if it's not visible in the browser window. To do this, you'll need to use PureBasic's ability to interact with web content through HTTP requests. Here's a high-level overview of how you can achieve this:

Send an HTTP GET Request: Use PureBasic's HTTPRequest functions (e.g., HTTPRequest()) to send an HTTP GET request to the URL of the web page you want to scrape.

Retrieve the Page Content: After sending the GET request, you'll receive the web page's HTML content in response. You can store this content in a string variable.

Extract the Text: You'll need to parse the HTML content to extract the text you want. PureBasic doesn't have built-in HTML parsing capabilities, so you may need to use regular expressions, string manipulation functions, or external libraries like "libxml2" or "htmlcxx" to parse and extract the text content.

Copy the Text to the Clipboard: Once you've extracted the text, you can use PureBasic's clipboard functions (e.g., Clipboard()) to copy the text to the clipboard.

Here's a simplified example of PureBasic code to give you an idea of how this might look:


Code: Select all

; Send an HTTP GET request
HTTPRequest(0, "https://example.com", "", "")

; Check if the request was successful
If HTTPStatus(0) = 200
    ; Retrieve the page content
    HTTPReadString(0, *PageContent)

    ; Close the HTTP request
    HTTPClose(0)

    ; Extract the text content (you'll need to implement this)
    ExtractText(*PageContent, *ExtractedText)

    ; Copy the extracted text to the clipboard
    Clipboard(*ExtractedText)
    
    ; Clean up
    FreeMemory(*PageContent)
    FreeMemory(*ExtractedText)
Else
    MessageRequester("Error", "Failed to retrieve the web page.")
EndIf

Procedure ExtractText(*PageContent.s, *ExtractedText.s)
    ; Implement your logic to extract text from HTML here
    ; You may use regular expressions, string manipulation, or a library like libxml2
EndProcedure
Last edited by Kuron on Sun Sep 17, 2023 1:31 am, edited 2 times in total.
Best wishes to the PB community. Thank you for the memories. ♥️
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Re: Copy a WEB page that is outside the screen

Post by jak64 »

Hello Kuron,
Thank you for your response, I will look at it tomorrow, in France, it is 2:30 a.m., I am going to bed.

See you
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Re: Copy a WEB page that is outside the screen

Post by jak64 »

Hello Kuron,

I tested the code you posted.

When launching, I get the error:

"Line 2: Wrong parameter type: expected number instead of a string".
I changed line 2
of "HTTPRequest(0, "https://google.com", "", "")
in HTTPRequest(0, "https://google.com", "", 0).

I restart and now I have another error:

"Line 5: HTTPStatus() is not a function, array, macro or list".

thanks for your help
User avatar
Kuron
Addict
Addict
Posts: 1626
Joined: Sat Oct 17, 2009 10:51 pm
Location: Pacific Northwest

Re: Copy a WEB page that is outside the screen

Post by Kuron »

ChatGPT isn't perfect, but it was worth a try.
Best wishes to the PB community. Thank you for the memories. ♥️
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Re: Copy a WEB page that is outside the screen

Post by jak64 »

I don't understand !
User avatar
Kuron
Addict
Addict
Posts: 1626
Joined: Sat Oct 17, 2009 10:51 pm
Location: Pacific Northwest

Re: Copy a WEB page that is outside the screen

Post by Kuron »

Read the first line in my post helping you. from ChatGPT:

ChatGPT provided your help, not me. It is not always accurate, but does point you in the right direction.
Best wishes to the PB community. Thank you for the memories. ♥️
jak64
Enthusiast
Enthusiast
Posts: 639
Joined: Sat Aug 15, 2020 5:02 pm
Location: Ciboure (France)

Re: Copy a WEB page that is outside the screen

Post by jak64 »

Ok
Post Reply