Your Name 3 years ago
parent
commit
f7d90c2c96
2 changed files with 104 additions and 1 deletions
  1. 2 1
      similar_web/main.py
  2. 102 0
      urlshortener/main.py

+ 2 - 1
similar_web/main.py

@@ -102,7 +102,8 @@ async def keyword(keyword):
     client = GoogleAdsClient.load_from_storage("./ads.yaml")
     list_keywords = kw_planner.main(client, "7400705511", ["2840"], "1000", [keyword], None)
     print(list_keywords)
-
+    print(list_keywords[0].text)
+    print(list_keywords[0].competition)
     return "OK"
 
 

+ 102 - 0
urlshortener/main.py

@@ -0,0 +1,102 @@
+import rpyc
+import time
+from fastapi import FastAPI
+import sys
+import os
+import dataset
+import requests
+import datetime
+import json
+import ast
+from fastapi.responses import JSONResponse
+from fastapi.middleware.cors import CORSMiddleware
+db = dataset.connect('sqlite:///similar.db')
+
+app = FastAPI()
+
+origins = [
+    "http://cmm.ai",
+    "https://cmm.ai",
+]
+
+app.add_middleware(
+    CORSMiddleware,
+    allow_origins=origins,
+    allow_credentials=True,
+    allow_methods=["*"],
+    allow_headers=["*"],
+)
+
+@app.post("/seturl")
+async def get_domain(domain_name):
+    url = "https://similarweb2.p.rapidapi.com/pageoverview"
+
+    if 'http' not in domain_name:
+        domain_name='http://'+domain_name
+    domain_name = domain_name.replace('%3A',':')
+    domain_name = domain_name.replace('%2F','/')
+    print(domain_name)
+    querystring = {"website":domain_name}
+
+    headers = {
+    "x-rapidapi-key": "6dd30886e0msh7aefc9a0a794398p1896f2jsn275c45475609",
+        "x-rapidapi-host": "similarweb2.p.rapidapi.com"
+        }
+
+    response = requests.request("GET", url, headers=headers, params=querystring)
+    print(response.text)
+    js=json.loads(response.text)
+    print(response.text)
+
+
+    jsdict={'SiteName':js['name'],'Description':js['siteDescription'],'GlobalRank':js['globalRank'],'Title':js['name'],'Category':js['categoryRank']['taxonomy'],'CountryRank':js['countryRank']['rank']}
+
+
+    url = "https://similarweb2.p.rapidapi.com/trafficoverview"
+
+    querystring = {"website":domain_name}
+
+    response = requests.request("GET", url, headers=headers, params=querystring)
+
+    js2=json.loads(response.text)
+    print(response.text)
+
+    jsdict['EstimatedMonthlyVisits']=js2['monthlyVisitsEstimate']
+#    desc=js['siteDescription']
+#    ustr=desc.encode('utf-8').decode('utf-8')
+#    print(ustr)
+    return JSONResponse(content=jsdict)
+
+
+
+@app.get("/domain/{domain_name}")
+async def read_item(domain_name):
+    cursor=db.query('select domain_name,json,dt from similar where domain_name="'+domain_name+'"')
+    for c in cursor:
+        print(c['json'])
+        print(c['dt'])
+#        jsdict=ast.literal_eval(c['json'])
+        jsdict=json.loads(c['json'])
+        return JSONResponse(content=jsdict)
+
+    print(domain_name)
+#    conn = rpyc.connect("localhost",12345)
+    conn = rpyc.connect("192.168.192.119",12345)
+
+    #domain_name
+    jsdata=conn.root.get_url('https://data.similarweb.com/api/v1/data?domain='+domain_name)
+    print(jsdata)
+#    jsdict=str(jsdata)[1:-1]
+#    jsdict=json.loads(str(jsdata))
+    jsdict=ast.literal_eval(str(jsdata))
+#    jsdict=str(jsdata)
+    table=db['similar']
+    jstr=json.dumps(jsdict)
+    table.insert({'domain_name':domain_name,'json':jstr,'dt':datetime.datetime.now()})
+    db.commit()
+    return JSONResponse(content=jsdict)
+#    print(jsdata)
+#    return {"item_id": domain_name}
+
+
+