Git Product home page Git Product logo

Comments (17)

msaffer avatar msaffer commented on May 27, 2024 3

It would be great if this supported Chrome.

from browsh.

tombh avatar tombh commented on May 27, 2024 3

I'm actually most interested in Chrome's DOMSnapshot API at the moment. It would restrict us to Chrome, but it could profoundly affect Browsh's rendering and performance. I made an issue for it: #390

from browsh.

tobimensch avatar tobimensch commented on May 27, 2024 2

This is low priority IMO. First iron out all problems on the firefox platform and when browsh becomes popular, other people will adapt it for other platforms such as Chrome.

from browsh.

MXP2095onetechguy avatar MXP2095onetechguy commented on May 27, 2024 1

I also want to see this with chromium, webextension can be used, but I think that browsh should support Selenium WebDriver, using that can add more browsers.

from browsh.

tombh avatar tombh commented on May 27, 2024

@msaffer I agree. But could you just give me your own reasons? Thanks.

from browsh.

MrAdam avatar MrAdam commented on May 27, 2024

Just having acquired a Raspberry Pi 3 B+, I'd say the Chrome/Chromium support would be nice, as a version of firefox supported by Browsh is very hard to install on RPi3 due to an issue with armhf and the later versions of Firefox (https://bugs.launchpad.net/ubuntu/+source/firefox/+bug/1711337).

from browsh.

kgfly avatar kgfly commented on May 27, 2024

+1 for chrome. Thanks. Chrome is the most popular. Even Microsoft has given up Edge/IE for chrome.

from browsh.

niutech avatar niutech commented on May 27, 2024

Can't we use any headless browser and inject a content script to every rendered web page?

from browsh.

tombh avatar tombh commented on May 27, 2024

In theory yes, but in reality there are some complicated hacks that make Browsh possible, like being able to screenshot the rendered page in order to detect the visibility of text.

from browsh.

niutech avatar niutech commented on May 27, 2024

Almost every headless browser allows to make a screenshot and access the DOM. Can't we use e.g. Playwright with multiple engines?

from browsh.

niutech avatar niutech commented on May 27, 2024

I was able to run Chromium (non-headless) with an extension using xvfb-run --server-args="-screen 0 1024x768x24" chromium-browser --remote-debugging-port=9222 --disable-gpu --load-extension=~/web-extension and chrome-remote-interface:

chromium

Next we could try loading a modified Browsh web extension using --load-extension.

from browsh.

tombh avatar tombh commented on May 27, 2024

Oh! Thanks for checking that out. So the screenshot needs to be available in code like this: https://github.com/browsh-org/browsh/blob/2f713f40fc87f5a3ca1ba15c469844c61f5f3fc6/webext/src/dom/graphics_builder.js

from browsh.

niutech avatar niutech commented on May 27, 2024

I can see you're using a deprecated Firefox-only drawWindow(), can't we use a standard captureVisibleTab() from background.js or html2canvas from the content script?

from browsh.

tombh avatar tombh commented on May 27, 2024

It's been a long time since I checked the latest Firefox API, I think current Browsh is pinned to some really old version, like v67!

from browsh.

niutech avatar niutech commented on May 27, 2024

Can we unpin it and use a standard way to capture a tab, so it works in both Firefox and Chromium?

from browsh.

tombh avatar tombh commented on May 27, 2024

Sure, but we'd need to test that

from browsh.

MXP2095onetechguy avatar MXP2095onetechguy commented on May 27, 2024

Also I found this selenium webdriver client, it is for go. Browsh can use nodejs, but that would add more dependency, so here is the client.

I also found more dated webdriver clients.

Or Playwright with Playwright-Go.

Maybe that the browser can use selenium webdriver and if that is not available, then fall back playwright and then fall back to webextension.

from browsh.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.