Skip to content

How can we change firefox to chrome or install a local plugin with firefox.  #19

Description

@Nikhilesh212
No description provided.

Activity

  1. parkeraddison commented on Jul 19, 2021

    @parkeraddison
    Member

    Discussed in #18

    Originally posted by Nikhilesh212 July 16, 2021
    Hey, this is Nikhilesh from Viasat India. We are working on developing a video QoE for our network. We are using DANE to emulate Viasat like network, for that we need to integrate a chrome plugin with DANE, is there any way you could help us?

    To use Google Chrome + ChromeDriver

    You'll need to change the Docker image to install these rather than Firefox+Geckodriver. We'll need to change these lines:

    # Install apt dependencies for web browsing
    RUN apt-get update && \
    apt-get install -y \
    firefox-esr
    # We'll need geckodriver in order to use selenium
    #
    # Here we're just finding the download url to the latest pre-compiled release
    # for linux64, then downloading and extracting to a location that's part of PATH
    RUN export org=mozilla && export repo=geckodriver && \
    export tag=$(curl -s "https://api.github.com/repos/$org/$repo/releases/latest" \
    | grep tag_name \
    | cut -d'"' -f4) && \
    wget -O- "https://github.com/$org/$repo/releases/download/$tag/$repo-$tag-linux64.tar.gz" \
    | tar -xz -C /usr/local/bin

    Here's an easy way of doing so:

    # Install Google Chrome
    RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \
        apt-get update && \
        apt-get install ./google-chrome-stable_current_amd64.deb
    
    # Install ChromeDriver
    RUN wget https://chromedriver.storage.googleapis.com/$(curl https://chromedriver.storage.googleapis.com/LATEST_RELEASE)/chromedriver_linux64.zip && \
        unzip chromedriver_linux64.zip -d /usr/local/bin/

    (don't forget to run make build and set the .system.use_local_images field to true in the config file so that the new Docker image will be used!)

    To use a Chrome extension

    You'll need to download the extension as a .crx file and drop it in the same directory as your selenium script. Then in the script you can use

    driver.add_extension(<path to extension .crx file>)

    to load in the extension.

    We did this over at dane-tool/starter-scripts for a Firefox addon -- the addon file is in extensions/ and the streaming/endless-youtube.py script gets the absolute path to the addon then installs it. If you place the extension in the same directory then you can avoid the need for .parent stuff.

    Hope this helps.

    Originally posted by @parkeraddison in #18 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions