Ascii2D
Attributes
BASE_URL = 'https://ascii2d.net'
module-attribute
SUPPORTED_SOURCES = ['fanbox', 'fantia', 'misskey', 'pixiv', 'twitter', 'ニコニコ静画', 'ニジエ']
module-attribute
URL = namedtuple('URL', ['href', 'text'])
module-attribute
Classes
Ascii2DItem
Bases: BaseSearchItem
Represents a single Ascii2D search result item.
Holds details of a result from an Ascii2D reverse image search, including image metadata, URLs, author information, and related content.
Attributes:
Name | Type | Description |
---|---|---|
origin |
PyQuery
|
The raw PyQuery data of the search result item. |
hash |
str
|
The hash string from the search result. |
detail |
str
|
Image details including dimensions, type, and size. |
thumbnail |
str
|
URL of the thumbnail image. |
url |
str
|
Primary URL of the webpage containing the image. |
url_list |
list[URL]
|
List of related URLs with their text descriptions. |
title |
str
|
Title of the image or related content. |
author |
str
|
Name of the image author/creator. |
author_url |
str
|
URL to the author's profile page. |
Source code in PicImageSearch/model/ascii2d.py
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
|
Functions
__init__(data, **kwargs)
Initializes an Ascii2DItem with data from a search result.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data
|
PyQuery
|
A PyQuery instance containing the search result item's data. |
required |
Source code in PicImageSearch/model/ascii2d.py
40 41 42 43 44 45 46 |
|
_arrange(data)
Organizes and processes the search result data.
Coordinates the extraction of URLs, title, author information, and other metadata. Handles the normalization of URLs and sets backup links if necessary.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data
|
PyQuery
|
PyQuery object containing the detail box information. |
required |
Source code in PicImageSearch/model/ascii2d.py
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
|
_arrange_backup_links(data)
Sets backup URLs when primary URL list is empty.
Extracts URLs from alternative locations in the HTML structure.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data
|
PyQuery
|
PyQuery object to search for backup links. |
required |
Source code in PicImageSearch/model/ascii2d.py
165 166 167 168 169 170 171 172 173 174 175 |
|
_arrange_links(infos, links, mark)
Processes and organizes the URLs found in the search result.
Extracts primary URL, author URL, title, and author name based on the source type. Handles different link patterns based on the source platform.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
infos
|
PyQuery
|
PyQuery object containing the detail box information. |
required |
links
|
PyQuery
|
PyQuery object containing all URL links. |
required |
mark
|
str
|
Source identifier string (e.g., "pixiv", "twitter"). |
required |
Source code in PicImageSearch/model/ascii2d.py
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 |
|
_arrange_title(infos)
Extracts and processes the title from the search result.
Handles various title formats and removes unwanted text patterns. Falls back to external text or h6 content if primary title is not found.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
infos
|
PyQuery
|
PyQuery object containing the title information. |
required |
Source code in PicImageSearch/model/ascii2d.py
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
|
_extract_external_text(infos)
staticmethod
Extracts text from external elements in the search result.
Removes link elements and combines remaining text content.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
infos
|
PyQuery
|
PyQuery object containing external text elements. |
required |
Returns:
Name | Type | Description |
---|---|---|
str |
str
|
Combined text from external elements, or empty string if none found. |
Source code in PicImageSearch/model/ascii2d.py
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
|
_normalize_url_list()
Normalizes all URLs in the url_list to absolute paths.
Converts relative URLs to absolute URLs by prepending the BASE_URL when necessary. Modifies the url_list attribute in place.
Source code in PicImageSearch/model/ascii2d.py
154 155 156 157 158 159 160 161 162 163 |
|
_parse_data(data, **kwargs)
Parses raw search result data into structured attributes.
Extracts and processes various pieces of information from the PyQuery data, including hash, image details, thumbnail URL, and other metadata.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data
|
PyQuery
|
PyQuery object containing the search result HTML. |
required |
**kwargs
|
Any
|
Additional keyword arguments (unused). |
{}
|
Source code in PicImageSearch/model/ascii2d.py
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
|
Ascii2DResponse
Bases: BaseSearchResponse[Ascii2DItem]
Represents a complete Ascii2D reverse image search response.
Processes and contains all search results from an Ascii2D search operation.
Attributes:
Name | Type | Description |
---|---|---|
origin |
PyQuery
|
The raw PyQuery data of the complete response. |
raw |
list[Ascii2DItem]
|
List of processed search result items. |
url |
str
|
URL of the search results page. |
Source code in PicImageSearch/model/ascii2d.py
178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 |
|
Functions
__init__(resp_data, resp_url, **kwargs)
Initializes with the response text and URL.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
resp_data
|
str
|
The data of the response. |
required |
resp_url
|
str
|
URL to the search result page. |
required |
Source code in PicImageSearch/model/ascii2d.py
189 190 191 192 193 194 195 196 |
|
_parse_response(resp_data, **kwargs)
Parses the raw response data into structured search results.
Converts HTML response into PyQuery object and extracts individual search items.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
resp_data
|
str
|
Raw HTML response string from Ascii2D. |
required |
**kwargs
|
Any
|
Additional keyword arguments (unused). |
{}
|
Source code in PicImageSearch/model/ascii2d.py
198 199 200 201 202 203 204 205 206 207 208 209 210 211 |
|