日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python模拟seo快排vps点击代码实操

發布時間:2023/12/8 python 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python模拟seo快排vps点击代码实操 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本期主要是介紹一下利用vps撥號的方法去運行用戶點擊行為,俗稱seo模擬快排,那么顧名思義,快排的運行方式需要在一臺撥號服務器上進行,本次模擬快排的代碼是采用python中的pyppeteer庫,這個庫運行自動化瀏覽器,比較順暢且快速。

運行邏輯

每次運行一次點擊后,自動重新撥號一次,然后再重新打開瀏覽器進行下一個關鍵詞的運行點擊,關鍵詞使用數據庫輪詢方式,每次點擊一個關鍵詞后,自動切換下一個關鍵詞

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 async def connect(self, name, username, password):'''ADSL撥號連接'''cmd_str = "rasdial %s %s %s" % (name, username, password)os.system(cmd_str)await asyncio.sleep(random.choice(range(1,4)))print("ADSL撥號成功")async def disconnect(self, name):'''ADSL斷開連接'''cmd_str = "rasdial %s /disconnect" % nameos.system(cmd_str)await asyncio.sleep(random.choice(range(1,4)))print("ADSL撥號斷開")async def getKeyword(self):try:while True:sql = 'select keywords,mode,web_name,web_url,click_now_count,click_ready_count from seo_kuaipai limit %s,%s' % ((self.pn - 1), 1)self.cur.execute(sql)info = self.cur.fetchone()self.keyword = info[0]self.mode = info[1]self.web_name = info[2]self.web_url = info[3]self.click_now_count = int(info[4] if info[4] else 0)self.click_ready_count = int(info[5] if info[5] else 10)if self.click_now_count > self.click_ready_count:self.pn += 1else:logger.info(f'正在優化的關鍵詞是{self.keyword}')breakexcept TypeError:logger.error('關鍵詞已經全部點完')return True

在某度輸入關鍵詞后以及點擊軌跡也做了一定的處理,其目的是為了規避機器點擊,真實的模擬真人點擊。

點擊元素上,做了隨機選取元素的坐標位置,然后進行鼠標的移動點擊。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 async def btn_element_position(self):element = await self.page.evaluate('''() =>{return { x: document.querySelector('#su').getBoundingClientRect().x,y: document.querySelector('#su').getBoundingClientRect().y,width: document.querySelector('#su').getBoundingClientRect().width,height: document.querySelector('#su').getBoundingClientRect().height}}''')x = element['x'] + random.choice(range(1, int(element['width']) + 1))y = element['y'] + random.choice(range(1, int(element['height']) + 1))await self.mousemove_click(x,y)

消除瀏覽器指紋特征

代碼里通過對瀏覽器的header頭進行了處理,包括(隨機UA,隨機cookie、隨機分辨率)、以及瀏覽器的啟動特征webdriver進行屏蔽,屏蔽webdriver用到了pyppeteer-stealth庫,這個庫是puppeteer-extra-plugin-stealth的Python移植版,可以有效的防止機器人檢測

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 await stealth(self.page) #消除瀏覽器特征await self.page.authenticate({'username': '649307714', 'password': 'a2063ror'})#設置瀏覽器ua await self.page.setUserAgent(await self.rand_ua())#設置瀏覽器大小 await self.page.setViewport({'width':self.rand_fbl["width"]-16,'height':self.rand_fbl["height"]-60})#設置瀏覽器cookie async def add_Cookies(self):with open('common/cookies.txt','r',encoding='utf-8') as f:cookies_list = f.read().splitlines()# 50%實用百度cookiesrand_cookies = random.choice(cookies_list).split('=')if random.choice(range(0, 2)) == 0:logger.info(f'本次使用cookies為{rand_cookies}')await self.page.setCookie({'name':rand_cookies[0],'value':rand_cookies[1],'domain':'www.baidu.com'})else:logger.info('本次不使用cookies')

清除緩存文件

清除緩存文件,可以每次運行瀏覽器模擬的時候,可以將本地緩存給清理掉,讓每次啟動瀏覽器的時候都是無緩存的狀態,而且也會釋放本地內存,不會造成卡頓。

這就是用python實現模擬快排整體思路了,當然還有更多的優化措施可以進一步的優化,現在可以在vps服務器里順暢的運行了。此次我也將代碼進行封裝了。大家在購買這款模擬快排軟件不需要安裝python環境,就可以運行了。

有需要購買的話,可以進入安全提示 - 985.so短網址?進行購買,又不懂的地方,也可以加我vx進行溝通:dan_moln

???????????????????????

?

總結

以上是生活随笔為你收集整理的python模拟seo快排vps点击代码实操的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。