首页 > 解决方案 > 如何使用 Selenium 在 Pycharm 中打开移动版 Google?

问题描述

我收集了一些代码,让我可以查看 Instagram 的移动版本,但是每当我尝试将代码放入一个类并运行该类时,它都会失败。我有一个类用于编写我的方法,另一个类用于调用这些方法。当我运行第二个类时,chromedriver 会打开 chrome,但不会调用 instagram URL。

这是有效的代码

from selenium import webdriver

mobile_emulation = { "deviceName": "iPhone X" }
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", 
mobile_emulation)
driver = webdriver.Chrome(executable_path='/Users/~~/chromedriver', chrome_options=chrome_options)
driver.get("https://instagram.com/")

我尝试创建一个类来保存这样的代码

from selenium import webdriver

mobile_emulation = {"deviceName": "iPhone X"}
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", 
mobile_emulation)
driver = webdriver.Chrome(executable_path='/Users/~~/chromedriver',
                      chrome_options=chrome_options)
class IGFrame:
    def __init__(self, driver):
        self.driver = driver

    def open_ig(self):
        self.driver.get("https://instagram.com/")
        time.sleep(2)

然后这是调用该方法的类

from version1.pages.basic_methods import *

class TestSetUp:

    def __init__(self, driver):
        self.driver = driver

    def test_mobileViewOfIG(self):
        methods = IGFrame(self.driver)
        methods.open_ig()

我的目标是在 IGFrame 类中设置驱动程序和调用 URL 的方法,然后我会从 TestSetUp 类中调用该方法。我做错了什么,我该怎么办?

标签: pythonseleniumgoogle-chromemobilepycharm

解决方案


推荐阅读