From 7215183403fe147fdc4865a9148f56abdab15cdf Mon Sep 17 00:00:00 2001 From: solongs <18810529813@163.com> Date: Fri, 17 Jun 2022 17:33:55 +0800 Subject: webcomponent --- componentClient.py | 11 + componentDetect.py | 445 + componentServer | Bin 0 -> 8735490 bytes technologies.json | 57128 +++++++++++++++++++++++++++++++++++ wappalyzer/src/categories.json | 739 + wappalyzer/src/technologies/_.json | 159 + wappalyzer/src/technologies/a.json | 4251 +++ wappalyzer/src/technologies/b.json | 2228 ++ wappalyzer/src/technologies/c.json | 3425 +++ wappalyzer/src/technologies/d.json | 1554 + wappalyzer/src/technologies/e.json | 1759 ++ wappalyzer/src/technologies/f.json | 1681 ++ wappalyzer/src/technologies/g.json | 2075 ++ wappalyzer/src/technologies/h.json | 1396 + wappalyzer/src/technologies/i.json | 1259 + wappalyzer/src/technologies/j.json | 839 + wappalyzer/src/technologies/k.json | 943 + wappalyzer/src/technologies/l.json | 1668 + wappalyzer/src/technologies/m.json | 2728 ++ wappalyzer/src/technologies/n.json | 865 + wappalyzer/src/technologies/o.json | 1567 + wappalyzer/src/technologies/p.json | 2927 ++ wappalyzer/src/technologies/q.json | 279 + wappalyzer/src/technologies/r.json | 1830 ++ wappalyzer/src/technologies/s.json | 5469 ++++ wappalyzer/src/technologies/t.json | 2779 ++ wappalyzer/src/technologies/u.json | 760 + wappalyzer/src/technologies/v.json | 878 + wappalyzer/src/technologies/w.json | 1814 ++ wappalyzer/src/technologies/x.json | 274 + wappalyzer/src/technologies/y.json | 605 + wappalyzer/src/technologies/z.json | 684 + webComponent.py | 70 + 33 files changed, 105089 insertions(+) create mode 100644 componentClient.py create mode 100644 componentDetect.py create mode 100644 componentServer create mode 100644 technologies.json create mode 100644 wappalyzer/src/categories.json create mode 100644 wappalyzer/src/technologies/_.json create mode 100644 wappalyzer/src/technologies/a.json create mode 100644 wappalyzer/src/technologies/b.json create mode 100644 wappalyzer/src/technologies/c.json create mode 100644 wappalyzer/src/technologies/d.json create mode 100644 wappalyzer/src/technologies/e.json create mode 100644 wappalyzer/src/technologies/f.json create mode 100644 wappalyzer/src/technologies/g.json create mode 100644 wappalyzer/src/technologies/h.json create mode 100644 wappalyzer/src/technologies/i.json create mode 100644 wappalyzer/src/technologies/j.json create mode 100644 wappalyzer/src/technologies/k.json create mode 100644 wappalyzer/src/technologies/l.json create mode 100644 wappalyzer/src/technologies/m.json create mode 100644 wappalyzer/src/technologies/n.json create mode 100644 wappalyzer/src/technologies/o.json create mode 100644 wappalyzer/src/technologies/p.json create mode 100644 wappalyzer/src/technologies/q.json create mode 100644 wappalyzer/src/technologies/r.json create mode 100644 wappalyzer/src/technologies/s.json create mode 100644 wappalyzer/src/technologies/t.json create mode 100644 wappalyzer/src/technologies/u.json create mode 100644 wappalyzer/src/technologies/v.json create mode 100644 wappalyzer/src/technologies/w.json create mode 100644 wappalyzer/src/technologies/x.json create mode 100644 wappalyzer/src/technologies/y.json create mode 100644 wappalyzer/src/technologies/z.json create mode 100644 webComponent.py diff --git a/componentClient.py b/componentClient.py new file mode 100644 index 0000000..3ea86c6 --- /dev/null +++ b/componentClient.py @@ -0,0 +1,11 @@ + +import requests + +domainlist = ["csdn.net", "youku.com", "wappalyzer.com"] +for domain in domainlist: + # 这边填你的内网服务器地址,端口8000 + req = requests.get("http://192.168.231.129:8000", params={"domain": domain}) + print(req.text, type(req.text)) + + + diff --git a/componentDetect.py b/componentDetect.py new file mode 100644 index 0000000..4b7b417 --- /dev/null +++ b/componentDetect.py @@ -0,0 +1,445 @@ +import aiohttp +import json +import logging +import pkg_resources +import re +import requests +import warnings + +from bs4 import BeautifulSoup +from typing import Union + +logger = logging.getLogger(name=__name__) + +class WappalyzerError(Exception): + """ + Raised for fatal Wappalyzer errors. + """ + pass + + +class WebPage: + """ + Simple representation of a web page, decoupled + from any particular HTTP library's API. + """ + + def __init__(self, url, html, headers): + """ + Initialize a new WebPage object. + + Parameters + ---------- + + url : str + The web page URL. + html : str + The web page content (HTML) + headers : dict + The HTTP response headers + """ + self.url = url + self.html = html + self.headers = headers + + try: + list(self.headers.keys()) + except AttributeError: + raise ValueError("Headers must be a dictionary-like object") + + self._parse_html() + + def _parse_html(self): + """ + Parse the HTML with BeautifulSoup to find