Python 和 Selenium 移动仿真
Python and Selenium mobile emulation
我正在尝试使用 Selenium 仿真和 Python 为 iPhone X 仿真 Chrome,如下所示:
from selenium import webdriver
mobile_emulation = { "deviceName": "iphone X" }
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(r'C:\Users\Alex\PythonDev\chromedriver')
driver.get('https://www.google.com')
然而,没有任何反应:我的页面仍然是一个普通的浏览器页面,我没有将其视为移动页面。
我的代码中缺少什么或有什么错误?
你需要写 iPhone X,你写了 iphone X 应该可以修复它
您现在可能已经找到了答案,但这是一个通用的答案:
在您的代码示例中,您的驱动程序没有机会知道您希望它模拟另一个设备。
这是完整的工作代码:
from selenium import webdriver
mobile_emulation = { "deviceName": "your device" }
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(options=chrome_options) #sometimes you have to insert your execution path
driver.get('https://www.google.com')
确保 Chrome 支持您的设备并且您的设备名称拼写正确。
如果这个答案是 helpful/worked,即使您已经有了解决方案,也请将其标记为如此。仅供以下程序员使用:)
贝尼.
试试这个。
iphoneX [宽度:375, height:812, pixelRatio:3].
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
mobile_emulation = {
"deviceMetrics": { "width": 375, "height": 812, "pixelRatio": 3.0 },
"userAgent": "Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19"
}
chrome_options = Options()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(
executable_path="../chrome/chromedriver85", options=chrome_options
)
url = "https://google.com/"
driver.get(url)
我正在尝试使用 Selenium 仿真和 Python 为 iPhone X 仿真 Chrome,如下所示:
from selenium import webdriver
mobile_emulation = { "deviceName": "iphone X" }
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(r'C:\Users\Alex\PythonDev\chromedriver')
driver.get('https://www.google.com')
然而,没有任何反应:我的页面仍然是一个普通的浏览器页面,我没有将其视为移动页面。
我的代码中缺少什么或有什么错误?
你需要写 iPhone X,你写了 iphone X 应该可以修复它
您现在可能已经找到了答案,但这是一个通用的答案: 在您的代码示例中,您的驱动程序没有机会知道您希望它模拟另一个设备。 这是完整的工作代码:
from selenium import webdriver
mobile_emulation = { "deviceName": "your device" }
chrome_options = webdriver.ChromeOptions()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(options=chrome_options) #sometimes you have to insert your execution path
driver.get('https://www.google.com')
确保 Chrome 支持您的设备并且您的设备名称拼写正确。
如果这个答案是 helpful/worked,即使您已经有了解决方案,也请将其标记为如此。仅供以下程序员使用:)
贝尼.
试试这个。
iphoneX [宽度:375, height:812, pixelRatio:3].
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
mobile_emulation = {
"deviceMetrics": { "width": 375, "height": 812, "pixelRatio": 3.0 },
"userAgent": "Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19"
}
chrome_options = Options()
chrome_options.add_experimental_option("mobileEmulation", mobile_emulation)
driver = webdriver.Chrome(
executable_path="../chrome/chromedriver85", options=chrome_options
)
url = "https://google.com/"
driver.get(url)