| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 | #import redisimport timeimport traceback#import jsonfrom selenium import webdriverfrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesimport timeimport osfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support import expected_conditions as ECimport datasetfrom selenium.webdriver.common.keys import Keysimport jsonimport randomimport timeimport redisimport sysimport codecsimport randomimport osimport timefrom userAgentRandomizer import userAgentsimport requestsdriver=Nonedb = dataset.connect('mysql://choozmo:pAssw0rd@db.ptt.cx:3306/seo?charset=utf8mb4')headers = {        "Authorization": "Bearer " + "6SDULL1Ebklduc6TFxa97AFto5Sj21kyJ30CxiLiSoi",        "Content-Type": "application/x-www-form-urlencoded"}def send_msg(kw):    params = {"message":kw}      r = requests.post("https://notify-api.line.me/api/notify",headers=headers, params=params)def re_get_webdriver():    global port    global driver    result=[]    if driver is not None:        print('closing....')        driver.quit()        os.system('killall chrome')        print('quit....')        driver=None    try:        r = redis.Redis(host='db.ptt.cx', port=6379, db=2,password='choozmo9')            data=r.get('google_proxy')        jstext=data.decode('utf-8')        jsobj=json.loads(jstext)        print(jsobj)        proxy=random.choice(jsobj)        ua = userAgents()        user_agent = ua.random()                options = webdriver.ChromeOptions()        options.add_argument("--no-sandbox")        options.add_argument("--disable-dev-shm-usage")        options.add_argument("--headless")#        options.add_argument('--remote-debugging-port='+port)        options.add_argument('--proxy-server='+proxy)#        options.add_argument('--proxy-server=socks5://192.53.174.202:8180')#        options.add_argument('--proxy-server=%s' % proxy)        print(proxy)#        print('--proxy-server=%s' % proxy)#        options.add_experimental_option("debuggerAddress", '127.0.0.1:9922')        print(user_agent)#        options.add_argument("--user-agent=" +user_agent)        options.add_argument("--incognito")        driver=None        try:#            driver = webdriver.Chrome(options=options)            if os.name=='nt':                driver = webdriver.Chrome(executable_path='C:/portable/webdriver/chrome102/chromedriver.exe',options=options)            else:#                driver = webdriver.Remote(#                    executable_path='/root/drivers/102/chromedriver',#                    command_executor='http://0.0.0.0:4444/wd/hub',#                    options=options #               )#                driver = webdriver.Chrome(executable_path='/root/drivers/102/chromedriver',options=options)                driver = webdriver.Chrome(options=options)        except:#            driver.quit()#            os.system('pkill -f ')#            os.system('kill %d' % os.getpid())            traceback.print_exc()            sys.exit()            return        driver.set_window_size(1400,1000)        return    except:        traceback.print_exc()        driver=None        return Nonedef run_once(jsobj):    table=db['rank_detection']    print(jsobj)    global driver#    i=random.randint(0,9)    i=100    if driver is None:        time.sleep(8)        re_get_webdriver()    if driver is None:        return    try:        kw=jsobj['kw']        if jsobj.get('domain') is None:            exclude=jsobj['exclude']            domain=None        else:            domain=jsobj['domain']            exclude=None#        driver.get('https://www.google.com?num=100')        driver.get('https://api.ipify.org/')        time.sleep(5)        print(driver.current_url)        elmt = driver.find_element(By.XPATH, "//body")        print(elmt.text)    except:        print('exception')        traceback.print_exc()    driver.quit()    sys.exit()par1='tiny3'port='9942'#os.system('docker container restart tiny3')#time.sleep(8)#os.system('docker exec -it tiny3 curl --socks5 choozmo:choozmo9@172.105.205.52:8180 http://www.google.com')#p=random.choice(positive)run_once({'domain':'test','kw':" ttes"})#run_once({'domain':domain,'kw':kw+' 錢濤'})
 |