Updated script that can be controled by Nodejs web app
This commit is contained in:
		
							
								
								
									
										162
									
								
								lib/python3.13/site-packages/selenium/webdriver/common/devtools/v85/database.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										162
									
								
								lib/python3.13/site-packages/selenium/webdriver/common/devtools/v85/database.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,162 @@ | ||||
| # DO NOT EDIT THIS FILE! | ||||
| # | ||||
| # This file is generated from the CDP specification. If you need to make | ||||
| # changes, edit the generator and regenerate all of the modules. | ||||
| # | ||||
| # CDP domain: Database (experimental) | ||||
| from __future__ import annotations | ||||
| from .util import event_class, T_JSON_DICT | ||||
| from dataclasses import dataclass | ||||
| import enum | ||||
| import typing | ||||
|  | ||||
| class DatabaseId(str): | ||||
|     ''' | ||||
|     Unique identifier of Database object. | ||||
|     ''' | ||||
|     def to_json(self) -> str: | ||||
|         return self | ||||
|  | ||||
|     @classmethod | ||||
|     def from_json(cls, json: str) -> DatabaseId: | ||||
|         return cls(json) | ||||
|  | ||||
|     def __repr__(self): | ||||
|         return 'DatabaseId({})'.format(super().__repr__()) | ||||
|  | ||||
|  | ||||
| @dataclass | ||||
| class Database: | ||||
|     ''' | ||||
|     Database object. | ||||
|     ''' | ||||
|     #: Database ID. | ||||
|     id_: DatabaseId | ||||
|  | ||||
|     #: Database domain. | ||||
|     domain: str | ||||
|  | ||||
|     #: Database name. | ||||
|     name: str | ||||
|  | ||||
|     #: Database version. | ||||
|     version: str | ||||
|  | ||||
|     def to_json(self): | ||||
|         json = dict() | ||||
|         json['id'] = self.id_.to_json() | ||||
|         json['domain'] = self.domain | ||||
|         json['name'] = self.name | ||||
|         json['version'] = self.version | ||||
|         return json | ||||
|  | ||||
|     @classmethod | ||||
|     def from_json(cls, json): | ||||
|         return cls( | ||||
|             id_=DatabaseId.from_json(json['id']), | ||||
|             domain=str(json['domain']), | ||||
|             name=str(json['name']), | ||||
|             version=str(json['version']), | ||||
|         ) | ||||
|  | ||||
|  | ||||
| @dataclass | ||||
| class Error: | ||||
|     ''' | ||||
|     Database error. | ||||
|     ''' | ||||
|     #: Error message. | ||||
|     message: str | ||||
|  | ||||
|     #: Error code. | ||||
|     code: int | ||||
|  | ||||
|     def to_json(self): | ||||
|         json = dict() | ||||
|         json['message'] = self.message | ||||
|         json['code'] = self.code | ||||
|         return json | ||||
|  | ||||
|     @classmethod | ||||
|     def from_json(cls, json): | ||||
|         return cls( | ||||
|             message=str(json['message']), | ||||
|             code=int(json['code']), | ||||
|         ) | ||||
|  | ||||
|  | ||||
| def disable() -> typing.Generator[T_JSON_DICT,T_JSON_DICT,None]: | ||||
|     ''' | ||||
|     Disables database tracking, prevents database events from being sent to the client. | ||||
|     ''' | ||||
|     cmd_dict: T_JSON_DICT = { | ||||
|         'method': 'Database.disable', | ||||
|     } | ||||
|     json = yield cmd_dict | ||||
|  | ||||
|  | ||||
| def enable() -> typing.Generator[T_JSON_DICT,T_JSON_DICT,None]: | ||||
|     ''' | ||||
|     Enables database tracking, database events will now be delivered to the client. | ||||
|     ''' | ||||
|     cmd_dict: T_JSON_DICT = { | ||||
|         'method': 'Database.enable', | ||||
|     } | ||||
|     json = yield cmd_dict | ||||
|  | ||||
|  | ||||
| def execute_sql( | ||||
|         database_id: DatabaseId, | ||||
|         query: str | ||||
|     ) -> typing.Generator[T_JSON_DICT,T_JSON_DICT,typing.Tuple[typing.Optional[typing.List[str]], typing.Optional[typing.List[typing.Any]], typing.Optional[Error]]]: | ||||
|     ''' | ||||
|     :param database_id: | ||||
|     :param query: | ||||
|     :returns: A tuple with the following items: | ||||
|  | ||||
|         0. **columnNames** -  | ||||
|         1. **values** -  | ||||
|         2. **sqlError** -  | ||||
|     ''' | ||||
|     params: T_JSON_DICT = dict() | ||||
|     params['databaseId'] = database_id.to_json() | ||||
|     params['query'] = query | ||||
|     cmd_dict: T_JSON_DICT = { | ||||
|         'method': 'Database.executeSQL', | ||||
|         'params': params, | ||||
|     } | ||||
|     json = yield cmd_dict | ||||
|     return ( | ||||
|         [str(i) for i in json['columnNames']] if 'columnNames' in json else None, | ||||
|         [i for i in json['values']] if 'values' in json else None, | ||||
|         Error.from_json(json['sqlError']) if 'sqlError' in json else None | ||||
|     ) | ||||
|  | ||||
|  | ||||
| def get_database_table_names( | ||||
|         database_id: DatabaseId | ||||
|     ) -> typing.Generator[T_JSON_DICT,T_JSON_DICT,typing.List[str]]: | ||||
|     ''' | ||||
|     :param database_id: | ||||
|     :returns:  | ||||
|     ''' | ||||
|     params: T_JSON_DICT = dict() | ||||
|     params['databaseId'] = database_id.to_json() | ||||
|     cmd_dict: T_JSON_DICT = { | ||||
|         'method': 'Database.getDatabaseTableNames', | ||||
|         'params': params, | ||||
|     } | ||||
|     json = yield cmd_dict | ||||
|     return [str(i) for i in json['tableNames']] | ||||
|  | ||||
|  | ||||
| @event_class('Database.addDatabase') | ||||
| @dataclass | ||||
| class AddDatabase: | ||||
|     database: Database | ||||
|  | ||||
|     @classmethod | ||||
|     def from_json(cls, json: T_JSON_DICT) -> AddDatabase: | ||||
|         return cls( | ||||
|             database=Database.from_json(json['database']) | ||||
|         ) | ||||
		Reference in New Issue
	
	Block a user