1.9 KiB

注意事项

程序如直接打包为 exe 文件,运行会遇到报错。这是可能因为程序在默认路径找不到 ini 文件引起的。解决的方法有两种:

  1. 把 ini 文件放到打包的程序文件夹 这样程序运行时会根据相对路径查找 ini 文件,避免找不到默认文件的问题
from DrissionPage import Drission, MixPage

drission = Drission(ini_path=r'.\configs.ini')  # ini文件放在程序相同路径下
page = MixPage(drission=drission)
  1. 把配置写到程序中,不使用 ini 文件
from DrissionPage.config import DriverOptions, SessionOptions
from DrissionPage import MixPage

do = DriverOptions(read_file=False)
so = SessionOptions(read_file=False)
page = MixPage(driver_options=do, session_options=so)

!> 注意
这个时候Drission的两个参数都要输入内容,如果其中一个不需要设置可以输入False.

如:

drission = Drission(driver_or_options=do, session_or_options=False)

实用示例

通常,我会把一个绿色浏览器和打包后的 exe 文件放在一起,程序中用相对路径指向该浏览器,这样拿到别的电脑也可以正常实用。

from DrissionPage import MixPage
from DrissionPage.config import DriverOptions

do = DriverOptions(read_file=False).set_paths(local_port='9888',
                                              chrome_path=r'.\Chrome\chrome.exe',
                                              driver_path=r'.\Chrome\chromedriver.exe',
                                              user_data_path=r'.\Chrome\userData')
page = MixPage(driver_options=do, session_options=False)

page.get('https://www.baidu.com')

注意以下两点,程序就会跳过读取 ini 文件:

  • DriverOptions()里要设置read_file=False
  • 如果不传入某个模式的配置(示例中为 s 模式),要在MixPage()初始化是设置对应参数为False