DrissionPage/docs/使用方法/打包程序.md
2022-01-15 01:00:48 +08:00

53 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 注意事项
程序如直接打包为 exe 文件,运行会遇到报错。这是可能因为程序在默认路径找不到 ini 文件引起的。解决的方法有两种:
1. **把 ini 文件放到打包的程序文件夹**
这样程序运行时会根据相对路径查找 ini 文件,避免找不到默认文件的问题
```python
from DrissionPage import Drission, MixPage
drission = Drission(ini_path=r'.\configs.ini') # ini文件放在程序相同路径下
page = MixPage(drission=drission)
```
2. **把配置写到程序中,不使用 ini 文件**
```python
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
```python
drission = Drission(driver_or_options=do, session_or_options=False)
```
# 实用示例
通常,我会把一个绿色浏览器和打包后的 exe 文件放在一起,程序中用相对路径指向该浏览器,这样拿到别的电脑也可以正常实用。
```python
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