-
-
Save wangke0809/a3845d349f154e95a00e419b27591f5d to your computer and use it in GitHub Desktop.
Revisions
-
dhruvkar revised this gist
Mar 22, 2019 . No changes.There are no files selected for viewing
-
dhruvkar revised this gist
Mar 22, 2019 . 1 changed file with 15 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -7,10 +7,12 @@ Also install: pip install requests pip install selenium pip install PyVirtualDisplay """ import requests from selenium import webdriver from selenium.webdriver.common.by import By @@ -33,9 +35,19 @@ def __init__(self, flavor): self.driver = webdriver.Firefox() else: raise Exception("need to specify 'chrome' or firefox' when creating a Browser") def transfer_to_requests(self): headers = { "User-Agent":"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36" } self.session = requests.session() self.session.headers.update(headers) for cookie in self.browser.get_cookies(): c = {cookie['name']: cookie['value']} sesh.cookies.update(c) return self.session # example usage b = Browser("chrome") b.driver.get("https://www.google.com") -
dhruvkar revised this gist
Mar 22, 2019 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -29,7 +29,7 @@ def __init__(self, flavor): if flavor.lower() == "chrome": self.driver = webdriver.Chrome() elif flavor.lower() == "firefox": self.driver = webdriver.Firefox() else: raise Exception("need to specify 'chrome' or firefox' when creating a Browser") -
dhruvkar revised this gist
Mar 22, 2019 . 1 changed file with 5 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -4,6 +4,11 @@ If you use Firefox, get Geckodriver and put in your PATH: https://github.com/mozilla/geckodriver/releases Also install: pip install selenium pip install PyVirtualDisplay """ -
dhruvkar created this gist
Mar 22, 2019 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,36 @@ """ If you use Chrome, get Chromedriver and put in your PATH: http://chromedriver.chromium.org/downloads If you use Firefox, get Geckodriver and put in your PATH: https://github.com/mozilla/geckodriver/releases """ from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.desired_capabilities import DesiredCapabilities from selenium.webdriver.support.ui import WebDriverWait, Select from selenium.webdriver.support import expected_conditions as EC from selenium.common.exceptions import NoSuchElementException, TimeoutException, UnexpectedAlertPresentException from pyvirtualdisplay import Display class Browser(object): # initialize with 'chrome' or 'firefox' as the driver def __init__(self, flavor): self.display = Display(visible=0, size=(2880, 1800)).start() if flavor.lower() == "chrome": self.driver = webdriver.Chrome() elif flavor.lower() == "firefox": un self.driver = webdriver.Firefox() else: raise Exception("need to specify 'chrome' or firefox' when creating a Browser") # example usage b = Browser("chrome") b.driver.get("https://www.google.com")