cxyu пре 3 година
родитељ
комит
89b32b5b43
2 измењених фајлова са 14 додато и 14 уклоњено
  1. 7 4
      wechat_action/create_ad_plan.py
  2. 7 10
      wechat_action/login_ad.py

+ 7 - 4
wechat_action/create_ad_plan.py

@@ -223,19 +223,22 @@ class CreateAdPlan():
                 if _.text in self.task['human_info_package']['name']:
                     _.click()
 
+            new_page_num_info = re.findall('\d+', page_text_element.text)
+            page_num_now = int(new_page_num_info[0].strip())
+
+            # 翻到最后一页时停止
+            if new_page_num_info[0].strip() == new_page_num_info[1].strip():
+                break
             # 翻页
             turn_page_buttons = self.driver.find_elements_by_xpath(
                 '//*[@class="adui-button-base adui-button-normal adui-button-mini adui-button-hasLeftIcon adui-button-hasRightIcon"]')
             turn_page_buttons[1].click()
             # 确保翻页成功
-            new_page_text_element = self.driver.find_element_by_xpath(
+            page_text_element = self.driver.find_element_by_xpath(
                 '//*[@class="adui-pagination-text"]')
 
             new_page_num_info = re.findall('\d+', page_text_element.text)
             page_num_now = int(new_page_num_info[0].strip())
-            # 翻到最后一页时停止
-            if new_page_num_info[0].strip() == new_page_num_info[1].strip():
-                break
             WebDriverWait(self.driver, 10).until(
                 lambda x: z != page_num_now)
         logging.info('翻页结束')

+ 7 - 10
wechat_action/login_ad.py

@@ -127,7 +127,7 @@ class LogIn:
             e_one.scroll(10000,100000);
             ''')
         time.sleep(0.1)
-        #TODO:去除掉time.sleep
+        # TODO:去除掉time.sleep
         time.sleep(5)
         WebDriverWait(self.driver, 100).until(
             lambda driver: len([self.driver.find_elements_by_link_text('广告投放')]) == 1)
@@ -176,21 +176,18 @@ class LogIn:
     def wechat_cookies_check_alive(self, driver_cookies):
         # wechat 检查cookies 是否可用
         # 可用返回ture
-        check_url = 'https://a.weixin.qq.com/cgi-bin/agency/get_delivery_metrics?page=1&page_size=10&search_key=&order_by=&ascending=1&only_collect=0&g_tk=5381&_={}'.format(
-            int(time.time() * 1000))
-        # cookie_dict = {}
-        # for _ in driver_cookies:
-        #     cookie_dict[_['name']] = _['value']
-        # rsp_json = requests.get(url=check_url, cookies=cookie_dict).json()
-
         self.driver.get('https://www.baidu.com')
         self.driver.get('https://a.weixin.qq.com/client')
         for _ in driver_cookies:
             self.driver.add_cookie(_)
         self.driver.get('https://a.weixin.qq.com/client')
-        self.driver.get(check_url)
 
-        if '4101' in self.driver.page_source:
+        try:
+            WebDriverWait(self.driver, 3).until(
+                lambda driver: self.driver.find_elements_by_xpath('//*[@class="qrcode lightBorder"]'))
+        except:
+            pass
+        if 'qrcode lightBorder' in self.driver.page_source:
             return False
         else:
             return True