seobot_selected_names.py 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. from selenium import webdriver
  2. from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
  3. import time
  4. import os
  5. import urllib.parse
  6. from selenium.webdriver.support.ui import WebDriverWait
  7. from selenium.webdriver.common.by import By
  8. from selenium.webdriver.support import expected_conditions as EC
  9. import codecs
  10. import random
  11. from bs4 import BeautifulSoup
  12. import requests
  13. import time
  14. import rpyc
  15. import sys
  16. import docker
  17. headers = {
  18. "Authorization": "Bearer " + "t35vhZtWNgvDNWHc3DJh0OKll3mcB9GvC8K2EAkBug2",
  19. "Content-Type": "application/x-www-form-urlencoded"
  20. }
  21. def send_msg(kw):
  22. params = {"message": "處理關鍵字: "+kw}
  23. r = requests.post("https://notify-api.line.me/api/notify",headers=headers, params=params)
  24. def empty_query(q):
  25. global driver
  26. googleurl='https://www.google.com/search?q='+urllib.parse.quote(q)
  27. driver.get(googleurl)
  28. time.sleep(3)
  29. def process_query(q):
  30. global driver
  31. googleurl='https://www.google.com/search?q='+urllib.parse.quote(q)
  32. driver.get(googleurl)
  33. time.sleep(3)
  34. elmts=driver.find_elements_by_xpath("//div[@class='g']//div[@class='yuRUbf']//a")
  35. idx=1
  36. ranking=-1
  37. for elmt in elmts:
  38. href=elmt.get_attribute('href')
  39. txt=elmt.text
  40. if len(txt)>10:
  41. # if 'hhh.com.tw' in href:
  42. if 'hhh.com.tw' in href:
  43. # if 'searchome.net' in href:
  44. webdriver.ActionChains(driver).move_to_element(elmt).perform()
  45. webdriver.ActionChains(driver).move_to_element(elmt).click().perform()
  46. break
  47. # fw=codecs.open('c:/tmp/gg.html','w','utf-8')
  48. # fw.write(driver.page_source)
  49. # fw.close()
  50. # driver.save_screenshot("c:/tmp/screen.png")
  51. # os.startfile("c:/tmp/screen.png")
  52. # driver.quit()
  53. #KPI: IS國際設計(293)陳嘉鴻
  54. # 浩室設計(278) 富億設計(31) 豐聚設計(24) 上築設計(594) 京璽國際(356) 摩登雅舍(307) 優尼客(491) 比沙列(33) 亞維(385)
  55. # /designers/cases/(491|31|293|278|31|24|594|356|307|491|33|385)
  56. #qlist=['上築空間設計','豐聚室內裝修','富億空間設計','浩室設計','京璽國際','IS國際設計','優尼客','摩登雅舍','亞維空間設計','比沙列','富億設計','豐聚設計']
  57. #qlist+=['YHS DESIGN','齊舍設計','奧立佛竺居','阿曼空間設計','界陽大司室內設計','尚藝室內裝修','禾禾設計','上陽設計','苡希創意設計','羽筑空間設計','將作空間']
  58. #qlist+=['富億空間','幸福空間節目 富億','幸福空間設計師 富億','幸福空間 富億','幸福空間 fe設計','老屋 富億','老屋翻新 富億','天井設計案例 富億','IS國際設計','豐聚設計','浩室設計','優尼客','摩登雅舍','亞維空間設計','比沙列','京璽國際','上築空間設計']
  59. #qlist+=['卓林室內設計','成綺空間設計','德本迪設計','昱森室內設計','千綵胤空間設計','上築空間設計']
  60. #qlist+=['IS國際設計','陳嘉鴻設計師設計費','陳嘉鴻設計師','陳嘉鴻 費用','IS國際設計 陳嘉鴻','幸福空間陳嘉鴻設計師','陳嘉鴻設計師評價','is國際設計ptt']
  61. #qlist+=['黃翊峰','林峰安 幸福空间','幸福空間王思文作品','黃仲均','鄭抿丹','張德良收費','周彥如','演拓設計費','演拓設計收費','邱郁雯','簡瑋琪','張靜峰設計費','周彥如設計師','陳錦樹設計師']
  62. #qlist+=['張靜峰設計師','伊太設計','is設計','比沙列室內裝修設計有限公司','陳嘉鴻設計師設計費','澄境室內設計','上築空間設計','比沙列設計','魏子涵']
  63. #qlist+=['幸福空間 魏子涵','豐聚室內裝修設計有限公司','水設設計ptt','室設計','設計鬼才','築空間設計']
  64. #qlist+=['富億設計','富億設計 新成屋','富億設計 新成屋','富億設計 老屋翻新','富億設計 陳錦樹','富億設計 設計師','富億設計 室內設計','富億設計 室內設計師']
  65. #qlist+=['京璽國際','京璽國際 周彥如','京璽國際 設計師','京璽國際 現代風','京璽國際 美式風','京璽國際 奢華風','京璽國際 新成屋']
  66. #qlist=['IS國際設計']
  67. #qlist+=['合砌設計','羽筑空間設計','朱英凱室內設計','將作空間','藝谷空間','文儀室內裝修','維耕設計','亞維空間設計','比沙列','上築空間設計','京璽國際','IS國際設計','優尼客','摩登雅舍','玖柞設計','麻石設計','元典設計','大琚空間','惹雅國際','橙果創意','PLSB建境','聯寬室內裝修']
  68. #qlist+=['IS國際設計','IS國際設計','IS國際設計 陳嘉鴻','IS國際設計 費用','IS國際設計 陳嘉鴻','IS國際設計 風格','IS國際設計 接案風格','IS國際設計 現代風','IS國際設計 老屋翻新']
  69. #qlist+=['京璽 幸福空間','澄境 幸福空間','雅舍王 幸福空間','豐聚設計 幸福空間','演拓設計評價 幸福','豐聚室內裝修設計','浩室 幸福','張德良評價']
  70. #qlist+=['奧立佛 設計師 鍾鼎','奧立佛 老屋翻新','奧立佛 住宅改造','奧立佛 監工費','奧立佛 設計 鍾黎']
  71. #qlist+=['王思文','陳嘉鴻設計師','星葉設計','邱郁雯','演拓設計收費','簡瑋琪','張靜峰設計師','伊太空間設計','伊太']
  72. #qlist+=['富億空間設計','富億空間設計 新成屋','富億空間設計 新成屋','富億空間設計 老屋翻新','富億空間設計 陳錦樹','富億空間設計 設計師','富億空間設計 室內設計','富億空間設計 室內設計師']
  73. #qlist+=['富億空間 新成屋','富億空間 新成屋','老屋翻新','富億空間 陳錦樹','富億空間 設計師','富億空間 室內設計']
  74. #qlist+=['豐聚設計','豐聚設計 黃翊峰','豐聚設計 李羽芝','豐聚設計 休閒風','豐聚設計 現代風','豐聚設計 工業風','豐聚設計 設計大獎']
  75. #qlist+=['合砌設計','合砌設計 臺北市','合砌設計 南港區','合砌設計 忠孝東路','合砌設計 簡約','合砌設計 現代風','合砌設計 徐俊福']
  76. #qlist+=['朱英凱室內設計','朱英凱室內設計 室內設計','朱英凱室內設計 國際大賞','朱英凱室內設計 GLORY','朱英凱室內設計 動線','朱英凱室內設計 設計費','朱英凱室內設計 毛坯屋']
  77. #qlist=['演拓設計','演拓設計 殷崇淵','演拓設計 張德良','演拓設計 楊霈瀅','演拓設計 寬寬','演拓設計 廖文祥','演拓設計 設計裝潢']
  78. #qlist=['玖柞設計','玖柞設計 朱伯晟','玖柞設計 蔡雅怡','玖柞設計 新宅','玖柞設計 室內設計','玖柞設計 建築','玖柞設計 裝潢設計']
  79. #qlist=['摩登雅舍','摩登雅舍 汪忠錠','摩登雅舍 王思文','摩登雅舍 室內裝修','摩登雅舍 手作牆','摩登雅舍 浮雕','摩登雅舍 南歐']
  80. #qlist=['亞維設計','亞維設計 簡瑋琪','亞維空間設計','亞維設計 居家室內設計','亞維設計 老屋翻新','亞維設計 軟裝','亞維設計 鄉村風']
  81. #qlist=['富億設計 富億營造','富億設計 新成屋','富億設計 老屋翻新','富億設計 陳錦樹','富億設計 設計師','富億設計 室內設計','富億設計 室內設計師']
  82. #qlist+=['卓林室內設計','卓林設計 林繹寬','卓林設計 設計師','卓林設計 機能宅','卓林設計 室內設計','卓林 室內設計','卓林設計 坪效','卓林設計 空間設計']
  83. #qlist=['德本迪 宜荷','德本迪 室內設計','德本迪 裝修','德本迪 宋雯鈴','德本迪 宋志鍾','德本迪 室內設計諮詢','德本迪 系統家具']
  84. #接案風格:現代風/古典風/休閒風/低調奢華/新古典。接案類型:小坪數/標準格局/別墅/大坪數/老屋翻新/樓中樓/實品/樣品屋/商業空間/挑高樓層。老屋翻新欲了解陳嘉鴻設計師價格? 到幸福空間看更多PTT、mobile01版友好評推薦的 is國際設計-陳嘉鴻設計師計費及作品。
  85. #qlist=['plsb建境 構建築','plsb建境 plsb','plsb建境 室內設計','plsb建境 空間設計','plsb建境 專線','plsb建境 專線']
  86. #qlist+=['界陽室內設計','界陽大司室內設計','界陽x大司','界陽大司 馬健凱設計師','界陽大司 設計師','界陽大司 設計風格']
  87. #qlist+=['馮澤森 構建築','馮澤森 plsb','馮澤森 室內設計','馮澤森 空間設計','馮澤森 專線','馮澤森 專線']
  88. #qlist=['馮澤森 構建築','馮澤森 plsb','馮澤森 室內設計','馮澤森 空間設計','馮澤森 專線','馮澤森 專線']
  89. #
  90. #qlist=['plsb建境 建築設計師','建築設計師 plsb','plsb建境 建築設計師','plsb建境 建築設計師','plsb建境 建築設計公司','plsb建境 建築設計公司']
  91. #qlist=['富億設計','富億設計 費用','富億設計 費用 評價','富億設計 評價','富億設計 室內設計','富億設計 設計師','富億設計 電話','富億設計 傳真']
  92. #qlist=['浩室設計','浩室設計 費用','浩室設計 費用 評價','浩室設計 評價','浩室設計 室內設計','浩室設計 設計師','浩室設計 邱炫達','浩室設計 無縫接案','浩室設計 室設計']
  93. #qlist=['優尼客設計','優尼客設計 空間設計','優尼客設計 設計','優尼客設計 黃仲均','優尼客設計 室內設計師','優尼客設計 現代風','優尼客設計 北歐風','優尼客設計 工業風']
  94. #qlist=['界陽大司','界陽大司 空間設計','界陽大司 設計','界陽大司 馬健凱','界陽大司 室內設計師','界陽大司 案例','界陽大司 室內設計獎']
  95. #qlist=['安喆空間設計','安喆 空間設計','安喆空間設計 專線','安喆空間設計 陳佳暄','安喆空間設計 林威任','安喆空間設計 桃園','安喆空間設計 公司地址']
  96. #qlist=['奧立佛竺居 設計師 鍾鼎','奧立佛竺居 老屋翻新','奧立佛竺居 住宅改造','奧立佛竺居 監工費','奧立佛竺居 設計 鍾黎','奧立佛竺居 謝雨竹']
  97. #qlist=['亞維設計免費專線','亞維設計 0809','亞維設計設計師','亞維設計主題','亞維設計 媒體報導','上築設計免費專線','上築設計設計師','上築設計 0809','上築設計獎項','浩室設計免費專線','浩室設計 0809','浩室設計設計師','浩室設計主題','富億設計免費專線','富億設計設計師','富億設計主題','豐聚設計免費專線','豐聚設計設計師','豐聚設計獎項']
  98. #qlist=['陳嘉鴻 設計師 幸福','幸福空間 陳嘉鴻','京璽國際 免費專線','京築聯合','京璽國際 京築','星葉設計','築空間設計','水設設計評價','京璽 周彥如','京璽國際 風水','京璽國際 小坪數','京璽國際 幸福','京璽 設計師 免費專線']
  99. #qlist=['設計師','裝潢','室內設計','室內設計師','設計師 小坪數','裝潢 小坪數','室內裝修']
  100. #豐聚室內裝修設計
  101. #,'IS國際設計電話','富億設計電話','富億設計設計師']
  102. #qlist=['陳嘉鴻 室內設計','裝潢','室內設計','室內設計師','設計師 小坪數','裝潢 小坪數','室內裝修']
  103. #qlist=['陳嘉鴻 室內設計','馮澤森 室內設計','黃翊峰 室內設計','簡瑋琪 室內設計','朱英凱 室內設計','李羽芝 室內設計','周彥如 室內設計']
  104. #qlist=['室內設計師','富億空間設計']
  105. #qlist=['亞維空間設計','簡瑋琪','亞維設計','亞維','簡瑋琪設計師','亞麋廚房']
  106. #qlist+=['幸福空間簡瑋琪','幸福空間亞維設計','幸福空間亞維','幸福空間盧慧珊','幸福空間汪忠錠','幸福空間王思文']
  107. #qlist=['陳嘉鴻設計師價格','陳嘉鴻設計師評價','IS國際設計價格','IS國際設計評價']
  108. #qlist+=['德本迪設計','德本迪設計 宜荷','德本迪設計 室內設計','德本迪設計 裝修','德本迪設計 宋雯鈴','德本迪設計 宋志鍾','德本迪設計 室內設計諮詢','德本迪設計 系統家具']
  109. #qlist+=['幸福空間陳錦樹','幸福空間富億設計','幸福空間富億']
  110. #qlist+=['盧慧珊 室內設計','豪宅 室內設計','浩室設計 室內設計','客廳室內設計','富億 客廳室內設計']
  111. #qlist=['黃仲均設計師','摩登雅舍室內設計','浩室設計有限公司','幸福空間 魏子涵','幸福空間王思文作品','張靜峰設計師','周彥如設計師']
  112. #qlist+=['黃仲均','幸福空間黃仲均','幸福空間設計師黃仲均','幸福空間優尼客']
  113. #qlist+=['幸福空間陳嘉鴻','幸福空間IS國際','幸福空間IS','幸福空間設計師陳嘉鴻']
  114. #qlist=['上築空間裝潢','上築裝潢','上築空間魏子涵','幸福空間魏子涵','上築空間設計','上築空間設計魏子涵']
  115. #conn = rpyc.classic.connect("192.53.174.202",18812)
  116. #conn.execute('import os')
  117. #ros = conn.modules.os
  118. #ros.system('docker restart 62eab82f7759')
  119. #print('after restart')
  120. #time.sleep(11)
  121. #print('after wait')
  122. result=[]
  123. result.append({'company':'上築','designers':['魏子涵'],'fullname':'上築空間設計'})
  124. result.append({'company':'摩登雅舍','designers':['王思文','汪忠錠'],'fullname':'摩登雅舍室內裝修設計'})
  125. result.append({'company':'亞維','designers':['簡瑋琪'],'fullname':'亞維空間設計'})
  126. result.append({'company':'比沙列','designers':['張靜峰'],'fullname':'比沙列室內裝修設計'})
  127. result.append({'company':'京璽國際','designers':['周彥如'],'fullname':'京璽國際'})
  128. result.append({'company':'京築聯合','designers':['周彥如'],'fullname':'京築聯合室內裝修'})
  129. result.append({'company':'浩室設計','designers':['浩室設計'],'fullname':'浩室設計'})
  130. result.append({'company':'IS國際設計','designers':['陳嘉鴻'],'fullname':'IS國際設計'})
  131. result.append({'company':'豐聚設計','designers':['黃翊峰','李羽芝'],'fullname':'豐聚室內裝修設計'})
  132. result.append({'company':'優尼客','designers':['黃仲均'],'fullname':'優尼客空間設計'})
  133. result.append({'company':'富億設計','designers':['陳錦樹'],'fullname':'富億空間設計'})
  134. result.append({'company':'三宅一秀','designers':['郁琇琇','天使總監郁琇琇'],'fullname':'三宅一秀空間創藝有限公司'})
  135. result.append({'company':'元均','designers':['馬愷君','設計總監馬愷君'],'fullname':'元均制作空間設計'})
  136. result.append({'company':'格綸設計','designers':['馬愷君','設計總監馬愷君'],'fullname':'格綸設計工程'})
  137. result.append({'company':'雅典設計','designers':['雅典設計'],'fullname':'雅典設計工程'})
  138. result.append({'company':'雲方設計','designers':['潘仕敏'],'fullname':'雲方室內裝修設計'})
  139. result.append({'company':'采品設計','designers':['盧慧珊'],'fullname':'采品室內設計'})
  140. result.append({'company':'恆岳設計','designers':['蔡岳儒'],'fullname':'恆岳空間設計'})
  141. result.append({'company':'唐林設計','designers':['廖韋強'],'fullname':'唐林建築室內設計'})
  142. result.append({'company':'恆岳設計','designers':['蔡岳儒'],'fullname':'恆岳空間設計'})
  143. result.append({'company':'澤序設計','designers':['張于廷'],'fullname':'澤序空間設計'})
  144. result.append({'company':'允庭設計','designers':['張舜淵','林術榮','李晴沛'],'fullname':'允庭室內裝修設計'})
  145. result.append({'company':'禾亞國際','designers':['李柔瑩'],'fullname':'禾亞國際室內裝修'})
  146. result.append({'company':'禾築設計','designers':['譚淑靜'],'fullname':'禾築國際設計'})
  147. result.append({'company':'我思空間','designers':['陳佳佑'],'fullname':'我思空間設計'})
  148. result.append({'company':'沛沛設計','designers':['郭沛沛'],'fullname':'沛沛國際室內設計'})
  149. qlist=[]
  150. def gen_long():
  151. global qlist
  152. for r in result:
  153. ds=r['designers']
  154. fullname=r['fullname']
  155. abvname=r['company']
  156. # qlist.append(fullname)
  157. qlist.append(fullname+"設計師")
  158. qlist.append(fullname+" 設計師")
  159. qlist.append(fullname+" 設計 師")
  160. qlist.append(abvname+"設計師")
  161. # qlist.append(abvname+" 設計師")
  162. qlist.append(abvname+"費用")
  163. qlist.append(abvname+"評價")
  164. # qlist.append(abvname+" 費用")
  165. # qlist.append(abvname+" 評價")
  166. # qlist.append(abvname+"專線")
  167. # qlist.append(abvname+"免費專線")
  168. # qlist.append(abvname+"ptt")
  169. qlist.append(abvname+" 設計 師")
  170. # qlist.append("幸福空間"+abvname)
  171. # for d in ds:
  172. # qlist.append(d+" 設計師")
  173. # qlist.append(d+"設計師")
  174. # qlist.append(abvname+d)
  175. # qlist.append(fullname+d)
  176. # qlist.append(d+"設計師設計費")
  177. # qlist.append(d+"設計師費用")
  178. # qlist.append(d+"設計師評價")
  179. # qlist.append("幸福空間"+d+"設計師")
  180. # qlist.append("幸福空間設計師"+d)
  181. # qlist.append("幸福 設計師 "+d)
  182. # qlist.append(d+"免費專線")
  183. print(qlist)
  184. gen_long()
  185. #sys.exit()
  186. #qlist=['IS國際設計費用?','IS國際設計電話?','上築設計的室內設計師是誰?','上築設計獎項?','上築設計免費專線?']
  187. client = docker.from_env()
  188. ls=client.containers.list()
  189. print(ls)
  190. ls[0].restart()
  191. #os.system('docker restart 8dd59fd0a019')
  192. time.sleep(10)
  193. #from selenium import webdriver
  194. #PROXY = "23.23.23.23:3128" # IP:PORT or HOST:PORT
  195. #chrome_options = webdriver.ChromeOptions()
  196. #chrome_options.add_argument('--proxy-server=%s' % PROXY)
  197. #options.add_argument("--proxy-server=socks5://" + host + ":" + port);
  198. #chrome = webdriver.Chrome(options=chrome_options)
  199. #chrome.get("http://whatismyipaddress.com")
  200. #from selenium import webdriver
  201. #options = webdriver.ChromeOptions()
  202. # set some options
  203. # for example:
  204. # options.add_argument('--disable-logging')
  205. #driver = webdriver.Remote(desired_capabilities=options.to_capabilities())
  206. options = webdriver.ChromeOptions()
  207. options.add_argument("--proxy-server=socks5://172.104.67.159:8180")
  208. driver = webdriver.Remote(
  209. command_executor='http://127.0.0.1:4444/wd/hub',
  210. #command_executor='http://192.53.174.202:4444/wd/hub',
  211. #command_executor='http://172.104.93.163:4444/wd/hub',
  212. #command_executor='http://dev2.choozmo.com:14444/wd/hub',
  213. desired_capabilities=options.to_capabilities())
  214. #desired_capabilities=DesiredCapabilities.CHROME)
  215. driver.set_window_size(1400,1000)
  216. #https://whatismyipaddress.com/ip/61.230.75.30
  217. #driver.get('https://whatismyipaddress.com/')
  218. #fw=codecs.open('c:/tmp/gg.html','w','utf-8')
  219. #fw.write(driver.page_source)
  220. #fw.close()
  221. #import sys
  222. #sys.exit()
  223. #### qlist=get_list()
  224. while True:
  225. q=random.choice(qlist)
  226. # prob=random.randint(0,4)
  227. prob=random.randint(0,2)
  228. if prob <=1:
  229. # q=qlist[0]
  230. print(q)
  231. process_query(q)
  232. send_msg(q)
  233. else:
  234. empty_query(q)
  235. # intsleep=random.randint(20,40)
  236. # intsleep=random.randint(7,20)
  237. intsleep=random.randint(10,20)
  238. # intsleep=random.randint(60,150)
  239. # intsleep=random.randint(5,12)
  240. # intsleep=random.randint(3,6)
  241. time.sleep(intsleep)