Python DrissionPage 爬虫 linux 部署说明 centos

梅孔立 2024-06-16 13:37:06 阅读 58

目前 DrissionPage 是装在 linux centos 系统上面的 浏览器用的是115版本最新的chrome 浏览器

DrissionPage 插件官网地址:http://g1879.gitee.io/drissionpagedocs/

1,安装

pip3 install DrissionPage

2,表示引入主程序

from DrissionPage import ChromiumPage

3,设置调用浏览器地址 只需要执行一次生成配置文件即可

from DrissionPage.easy_set import set_paths

#表示调用浏览器的地址是多少

Windows 地址示例

set_paths(browser_path=r'C:/Users/AAA/AppData/Local/Google/Chrome/Application/chrome.exe') #windows的直接找chrome.exe文件

Linux 地址示例

set_paths(browser_path=r'/opt/google/chrome/google-chrome') #一般linux安装的google浏览器默认都在这个目录

4,最重要的一步 设置不显示浏览器调用访问,只需要在linux环境上打开注释即可

from DrissionPage.easy_set import set_headless, set_pathsset_headless(True)

5,最重要的一步

程序必须引入此配置表示无头加载

在这里插入图片描述

6,ini配置说明

默认windows是不需要管的,只需要linux的时候设置一下注意端口不要冲突和chromedriver地址即可

服务器linux地址为

/usr/local/python3/lib/python3.7/site-packages/DrissionPage/configs

在这里插入图片描述

1,表示chrome对应版本的 chromedriver地址

2,表示debug模式启动的端口,注意如果部署了selenium 端口不要冲突了 默认是9222 修改成9211或者其他都可以

3,表示chrome对应的安装地址,一般不需要动

ini配置代码

[paths]chromedriver_path = /mkl/weipu/chromedriver-linux64/chromedriverdownload_path = [chrome_options]debugger_address = 127.0.0.1:9211binary_location = /opt/google/chrome/google-chromearguments = ['--no-first-run', '--no-sandbox', '--disable-infobars', '--disable-popup-blocking', '--headless=new']extensions = []experimental_options = { 'prefs': { 'profile.default_content_settings.popups': 0, 'profile.default_content_setting_values': { 'notifications': 2}}}page_load_strategy = normaluser = Defaultauto_port = Falsesystem_user_path = False[session_options]headers = { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8', 'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'connection': 'keep-alive', 'accept-charset': 'GB2312,utf-8;q=0.7,*;q=0.7'}[timeouts]implicit = 10page_load = 30script = 30[proxies]http = https =

7,代码示例说明

import timeimport reimport mathfrom DrissionPage import ChromiumPagefrom DrissionPage.easy_set import set_pathsfrom DrissionPage import ChromiumOptionsfrom DrissionPage.easy_set import set_headless, set_pathsset_headless(True)#必须要加这个 表示在linux上无头加载co = ChromiumOptions()co.set_argument('--incognito')co.set_argument('--no-sandbox');#set_paths(browser_path=r'/opt/google/chrome/google-chrome')#set_paths(browser_path=r'C:/Users/AAA/AppData/Local/Google/Chrome/Application/chrome.exe')def start_test_spider(auth_name,institution_name,status_type): # 用 d 模式创建页面对象(默认模式) page = ChromiumPage() # 跳转到登录页面 page.get('https://xxx.com/') time.sleep(1) #选择点击事件 可以使用 xpath: 后面的是xpath路径 page.ele('xpath://*[@id="basic_searchdomainfilter"]/div[1]/div[1]/div[1]/div/div/input').click() #这里为input的输入的内容 根据xpath page.ele('xpath://*[@id="basic_searchdomainfilter"]/div[1]/div[1]/div[2]/input').input('输入的内容') #关闭浏览器 page.close_tabs()



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。