学习DrissionPage的第一天

RPA我感觉是HumanAgent

当我打开DrissionPage官方文档并实现其中案例时我在想这和爬虫有什么区别呢?
写了两三个案例后我发现这不是爬虫,爬虫是发送http请求不会调用本地的浏览器。爬虫是模拟浏览的网站访问
并爬取数据。但是RPA不同,他更像是在操控我的电脑去进行浏览器的访问,但是很快,大量重复性无意义的工作
似乎可以帮我去完成,使用它去定位xpath然后抓取数据,并且由于它是操控本地的浏览器,不会被一些网站所拦
截。有点像代理人类去做事情,我把它和AIagent进行了类比就教它HumanAgent了。

from DrissionPage import ChromiumOptions, Chromium

# 1. 手动设置浏览器路径(关键!)
options = ChromiumOptions()
options.set_browser_path(r"C:\Program Files (x86)\Chromebrowser\Chrome.exe")

# 2. 使用这些选项启动浏览器
page = Chromium(options)

# 3. 打开新标签页
tab = page.get_tab()

# 4. 访问某个网址,比如百度
url = "https://www.baidu.com"
tab.get(url)
context = tab.ele('xpath://*[@id="s-hotsearch-wrapper"]')
print(context.text)

这是我今天写的第一个案例,这个RPA库只支持谷歌的浏览器,我简单的进行了访问网页并拿取数据,但是我发现
一个问题就是这个似乎有点智障,它在控制我的浏览器的时候若是爬取大量的数据我的电脑操作权力岂不是全在它
的手上,那我岂不是一段时间都用不了电脑了。我后面应该会解决。

from DrissionPage import Chromium,ChromiumOptions
options = ChromiumOptions()
options.set_browser_path(r"C:\Program Files (x86)\Chromebrowser\Chrome.exe")
page = Chromium(options)
tab = page.get_tab()
tab.get("https://www.baidu.com")
tab.ele('xpath://*[@id="chat-textarea"]').input("我的世界")
tab.ele('xpath://*[@id="chat-submit-button"]').click()
tab.ele('xpath://*[@id="7"]/div/div/div/div/div[1]/h3/a/span').click()
tab.ele('xpath://*[@id="_5ea2"]/div[1]/div/div/div/div[3]/div/div/div/div/div[2]/div/div/div[2]/div[2]/div[3]/div[2]/textarea').input("你好,世界!")

这是第二个问题就是当我点击某个超链接的时候会产生第二个标签页,那么我就控制不了浏览器了。这是我明天准备解决的问题。

posted @ 2025-10-18 21:14  mushi2005  阅读(14)  评论(0)    收藏  举报