Base Crawler¶
pcapkit.vendor.default contains Vendor
only, which is the base meta class for all vendor crawlers.
- class pcapkit.vendor.default.Vendor[source]¶
Bases:
objectDefault vendor generator.
Inherit this class with
FLAG&LINKattributes, etc., to implement a new vendor generator.- rename(name, code, *, original=None)[source]¶
Rename duplicated fields.
- Parameters:
- Return type:
- Returns:
Revised field name.
Example
If
namehas multiple occurrences in the source registry, the field name will be sanitised as${name}_${code}.Otherwise, the plain
namewill be returned.
- _request()[source]¶
Fetch CSV data from
LINK.This is the low-level call of
request().If
LINKisNone, it will directly call the upper methodrequest()with NO arguments.The method will first try to GET the content of
LINK. Should any exception raised, it will first try with proxy settings fromget_proxies().Note
Since some
LINKlinks are from Wikipedia, etc., they might not be available in certain areas, e.g. the amazing PRC :)Would proxies failed again, it will prompt for user intervention, i.e. it will use
webbrowser.open()to open the page in browser for you, and you can manually load that page and save the HTML source at the location it provides.- Return type:
- Returns:
CSV data.
- Warns:
VendorRequestWarning – If connection failed with and/or without proxies.
See also
Internal Definitions¶
- class pcapkit.vendor.default.VendorMeta(name, bases, namespace, /, **kwargs)[source]¶
Bases:
ABCMetaMeta class to add dynamic support to
Vendor.This meta class is used to generate necessary attributes for the
Vendorclass. It can be useful to reduce unnecessary registry calls and simplify the customisation process.
- pcapkit.vendor.default.LINE(NAME, DOCS, FLAG, ENUM, MISS, MODL)¶
Default constant template of enumeration registry from IANA CSV.
- Parameters:
NAME (str) – name of the constant enumeration class
DOCS (str) – docstring for the constant enumeration class
FLAG (str) – threshold value validator (range of valid values)
ENUM (str) – enumeration data (class attributes)
MISS (str) – missing value handler (default value)
MODL (str) – module name of the constant enumeration class
- Return type:
- pcapkit.vendor.default.get_proxies()[source]¶
Get proxy for blocked sites.
The function will read
PCAPKIT_HTTP_PROXYandPCAPKIT_HTTPS_PROXY, if any, for the proxy settings ofrequests.