MCPcopy
hub / github.com/stitionai/devika / screenshot

Method screenshot

src/browser/interaction.py:170–188  ·  view source on GitHub ↗
(self, project_name)

Source from the content-addressed store, hash-verified

168 self.page.set_viewport_size({"width": 1280, "height": 1080})
169
170 def screenshot(self, project_name):
171 screenshots_save_path = Config().get_screenshots_dir()
172
173 page_metadata = self.page.evaluate("() => { return { url: document.location.href, title: document.title } }")
174 page_url = page_metadata['url']
175 random_filename = os.urandom(20).hex()
176 filename_to_save = f"{random_filename}.png"
177 path_to_save = os.path.join(screenshots_save_path, filename_to_save)
178
179 self.page.emulate_media(media="screen")
180 self.page.screenshot(path=path_to_save)
181
182 new_state = AgentState().new_state()
183 new_state["internal_monologue"] = "Browsing the web right now..."
184 new_state["browser_session"]["url"] = page_url
185 new_state["browser_session"]["screenshot"] = path_to_save
186 AgentState().add_to_current_state(project_name, new_state)
187
188 return path_to_save
189
190 def go_to_page(self, url):
191 self.page.goto(url=url if "://" in url else "http://" + url)

Callers 1

start_interactionFunction · 0.95

Calls 5

ConfigClass · 0.90
AgentStateClass · 0.90
get_screenshots_dirMethod · 0.80
new_stateMethod · 0.80
add_to_current_stateMethod · 0.80

Tested by

no test coverage detected