def brInit(adb_crx=None):
"""
Initialises Selenium's webdriver (Chrome)
This version uses an adblock extension to load pages faster.
Download the crx file and save it in the same folder.
You can use any extension you want.
return: webdriver object
"""
if adb_crx == None:
driver = driver = webdriver.Chrome()
else:
chop = webdriver.ChromeOptions()
chop.add_extension(adb_crx)
driver = webdriver.Chrome(chrome_options = chop)
return driver
python类Chrome()的实例源码
def scrape():
print((os.path.dirname(os.path.abspath(__file__)) + '/' + cdname))
browser = webdriver.Chrome(os.path.dirname(os.path.abspath(__file__)) + '/' + cdname)
browser.get('https://my.unt.edu/psp/papd01/EMPLOYEE/EMPL/h/?tab=NTPA_GUEST')
euid = input('What is your EUID? ')
password = getpass.getpass('What is your password? ')
euid_field = browser.find_element_by_name('userid')
password_field = browser.find_element_by_name('pwd')
euid_field.send_keys(euid)
password_field.send_keys(password)
login_field = browser.find_element_by_css_selector('input[value="Login"]')
login_field.click()
browser.get('https://my.unt.edu/psp/papd01/EMPLOYEE/EMPL/h/?cmd=getCachedPglt&pageletname=GBPA_STUDENT_CLASSES&tab=GBPA_STUDENT&PORTALPARAM_COMPWIDTH=Narrow')
classes = browser.find_elements_by_css_selector('p')
return build_datetimes(parse_times(format(classes)))
def test():
profile_dir = r"D:\MyChrome\Default"
# ?????
# "Referer": "http://weixin.sogou.com"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--user-data-dir=" + os.path.abspath(profile_dir))
PROXY = "123.56.238.200:8123"
# j = random.randint(0, len(proxys)-1)
# proxy = proxys[j]
chrome_options.add_argument('--proxy-server=%s' % PROXY)
# chrome_options.add_extension('')??crx??
# service_args = ['--proxy=localhost:9050', '--proxy-type=socks5', ]
driver = webdriver.Chrome(r'C:\Python27\chromedriver', chrome_options=chrome_options)
driver.get('http://icanhazip.com')
driver.refresh()
print(driver.page_source)
driver.quit()
def __init__(self):
self._ocr = RClient(config.dama_name, config.dama_pswd, config.dama_soft_id, config.dama_soft_key)
self._cache = filecache.WechatCache(config.cache_dir, 60 * 60)
self._session = self._cache.get(config.cache_session_name) if self._cache.get(
config.cache_session_name) else requests.session()
self.cookie = self.maintain_cookies_ph()
self.agents = [
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",
"Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
"Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",
"Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",
"Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)",
"Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1",
"Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0",
"Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5",
"Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.20 (KHTML, like Gecko) Chrome/19.0.1036.7 Safari/535.20",
"Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52",
]
def update_page_source(self):
url = self.build_search_url()
driver = Chrome()
driver.get(url)
num_scrolls = 0
try:
while num_scrolls < self.scroll_max:
driver.execute_script(random_js_scroll())
self.page_source = driver.page_source
random_sleep()
num_scrolls+=1
except Exception as e:
l.WARN(e)
driver.close()
proximus_auto_add_vol_pack.py 文件源码
项目:proximus_auto_add_vol_pack
作者: salcin
项目源码
文件源码
阅读 33
收藏 0
点赞 0
评论 0
def __init__(self, user, pwd, repeat, debug):
self.debug = debug
self.set_debug() # if self.debug = yes view procedure step by step in the browser
# don't loading the images to optimize the speed of requests
chromeOptions = webdriver.ChromeOptions()
prefs = {"profile.managed_default_content_settings.images":2}
chromeOptions.add_experimental_option("prefs",prefs)
self.browser = webdriver.Chrome(chrome_options=chromeOptions)
self.login(user, pwd)
self.go_to_internet()
i = 1
while i <= repeat:
i += 1
self.go_to_service()
self.confirmed()
self.logout()
def login(username, password):
driver_directory = os.path.dirname(__file__)
if (platform.system() == "Windows"):
relative_path = "chromedriver.exe"
else:
relative_path = "chromedriver"
absolute_file_path = os.path.join(driver_directory, relative_path)
driver = webdriver.Chrome(executable_path=absolute_file_path)
driver.get("http://www.ilearn.sexy") # Shortcut to itslearning
username_field = driver.find_element_by_name("feidename")
username_field.send_keys(username)
password_field = driver.find_element_by_name("password")
password_field.send_keys(password)
password_field.submit()
login_success_field = driver.find_element_by_name("mainmenu")
driver.close()
driver.quit()
def main():
print 'hello'
print sys.argv
print len(sys.argv)
dper= sys.argv[1]
print "your dper is:"+dper
opts = Options()
opts.add_argument("user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.86 Safari/537.36")
driver = webdriver.Chrome(chrome_options=opts)
driver.maximize_window()
driver.get("http://s.dianping.com/event/119124")
driver.add_cookie({'name':'dper', 'value':dper,'path':'/'})
category_urls=[]
category_urls.append("http://s.dianping.com/event/shanghai/c1")
category_urls.append("http://s.dianping.com/event/shanghai/c6")
for url in category_urls:
process_category(url, driver)
driver.quit()
def start_driver(self):
try:
driver = self.find_chromedriver()
except WebDriverException:
logger.error('Unable to locate chromedriver')
time.sleep(0.1)
download = raw_input('\nNo chrome driver found. Download? (y/n): ')
if download.lower().startswith('y'):
self.download_chromedriver()
try:
driver = webdriver.Chrome(executable_path=self.chrome_path)
except WebDriverException as e:
if 'cannot find' in e.msg:
logger.critical('Could not start Chrome browser')
raise SystemExit('Forms log cannot be retrieved without Chrome and chromedriver.')
else:
logger.exception('Cannot start the Chrome browser')
raise SystemExit('Forms log cannot be retrieved without Chrome and chromedriver.')
else:
raise SystemExit('Forms log cannot be retrieved without Chrome and chromedriver.')
return driver
def test_dynamic_request_browser_actions(self):
cm = CookiesMiddleware(self.spider, self.spider.settings)
self.driver = webdriver.Chrome()
dh = DownloadHandler(self.spider, self.driver, self.driver_sem)
def _actions(driver):
driver.find_element_by_name('account').send_keys("username")
driver.find_element_by_name('password').send_keys("pwd")
driver.find_element_by_xpath('/html/body/div[1]/div/div[2]/div[2]/form/div[2]/button').click()
gevent.sleep(5)
request = Request('https://www.zhihu.com/#signin',
dynamic=True, meta={'cookiejar': 'test'},
browser_actions=[_actions],
)
cm.process_request(request)
response = dh.fetch(request)
cm.process_response(request, response)
request = Request('https://www.zhihu.com', dynamic=True, meta={'cookiejar': 'test'})
cm.process_request(request)
response = dh.fetch(request)
cm.process_response(request, response)
print response.body
self.driver.close()
def shut_down(driver):
'''Shuts down the driver and its virtual display
Args:
driver (selenium.webdriver.): Selenium webdriver to stop.
Example:
::
from selenium import webdriver
from selenium_extensions.core import shut_down
driver = webdriver.Chrome()
...
shut_down(driver)
'''
driver.quit()
try:
kill_virtual_display(driver.display)
except (AttributeError, TypeError):
# Display is either None or there is no display at all
pass
def click_on_element(driver, element_locator):
'''Clicks on a Selenium element represented by ``element_locator``
Args:
element_locator ((selenium.webdriver.common.by.By., str)): element locator described using `By`. Take a look at `Locate elements By <http://selenium-python.readthedocs.io/api.html#locate-elements-by>`_ for more info.
Example:
::
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium_extensions.core import click_on_element
driver = webdriver.Chrome()
...
click_on_element(driver, (By.ID, 'form-submit-button'))
'''
element = driver.find_element(*element_locator)
element.click()
def __init__(self, savedir='./', screenshot=False):
"""
Initialize ScreenScraper.
:param savedir: directory to save OFX in
:type savedir: str
:param screenshot: whether or not to take screenshots throughout the
process
:type screenshot: bool
"""
self._savedir = os.path.abspath(os.path.expanduser(savedir))
if not os.path.exists(self._savedir):
os.makedirs(self._savedir)
self._cookie_file = os.path.join(self._savedir, 'cookies.txt')
logger.debug('Using savedir: %s', self._savedir)
self._screenshot_num = 1
self._screenshot = screenshot
if self._screenshot:
logger.warning("screenshotting all actions")
self.user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36' \
' (KHTML, like Gecko) Chrome/62.0.3202.62 ' \
'Safari/537.36'
def get_selenium_driver(browser_name: str) -> Union[Chrome, Firefox]:
"""
Return the same instance to the Selenium driver.
:param browser_name: the name of the browser: chrome or mozilla
:type browser_name: str
:return: an instance of the required driver.
:rtype: Union[Chrome, Mozilla]
"""
if browser_name.upper() == 'CHROME':
return SingletonFactory.build(Chrome)
elif browser_name.upper() == 'Mozilla':
return SingletonFactory.build(Firefox)
else:
raise NotImplementedError
def __init__(self):
self.browser = webdriver.Chrome(executable_path="C:/chromedriver.exe")
super (JSPageMiddleware,self).__init__()
#??chrome??????
def before_all(context):
context.browser = webdriver.Chrome()
def checkCart(self):
print self.cj
#driver = webdriver.Firefox()
#driver.add_cookie(cj_dict)
#driver.get('http://shop.bdgastore.com/cart')
#print(driver.get_cookies())
#for cookie in self.cj:
# print cookie.name, cookie.value, cookie.domain
#try importing cookies manually vs using the requests util
#driver = webdriver.Chrome('./chromedriver')
def setUp(self):
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
self.page = MyPage(browser=webdriver.Chrome(chrome_options=chrome_options))
self.page.browser.get('http://localhost:3000')
def setUp(self):
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
self.page = MyPage(browser=webdriver.Chrome(chrome_options=chrome_options))
self.page.browser.get('http://localhost:3000')
def setUp(self):
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
self.page = MyPage(browser=webdriver.Chrome(chrome_options=chrome_options))
self.page.browser.get('http://localhost:3000')