def show_favo_account_list(driver): try: xpaths = [ '/html/body/div/div[2]/div/article/div[3]/section[2]/div/div/button', '/html/body/div/div[2]/div/article/div[3]/section[2]/div/div/a', ] elm = es.get_elms_by_xpaths(driver, xpaths) elm[0].click() es.wait(10) except: function = sys._getframe().f_code.co_name message = 'いいねしたアカウントの表示に失敗しました。' es.notice_error(module, function, message)
def al_release_follow(driver, profile_url, release_min, release_follow): # profile_url:プロフィールのURL # release_min:これ以下のフォロー数だと、解除しない # release_follow:フォローの解除数 try: # プロフィールに遷移(1回で移動できない時があるから、2回移動) for i in range(2): driver.get(profile_url) es.wait() # フォロー数取得 follows = get_follow(driver) # フォロー解除するかどうかの判別 if(follows > release_min): # フォロー中のリスト表示 display_follow(driver) # 一番下までスクロール selector = 'body > div.RnEpo.Yx5HN > div > div > div.isgrP' # スクロールする要素のCSSセレクター item_xpath = [ # 取り得るXpath '/html/body/div[5]/div/div/div[2]/ul/div/li[1]/div', '/html/body/div[4]/div/div/div[2]/ul/div/li[1]/div' ] scroll_item = es.get_elm_by_xpaths(driver, item_xpath) # スクロールする要素 scroll_height = scroll_item.size['height'] # 一回分のスクロール量取得 for i in range(follows): # スクロール es.scroll(driver, selector, scroll_height) es.wait(0.1, 0.1) # フォロー解除ボタンの要素を取得 xpaths = [ '/html/body/div[4]/div/div/div[2]/ul/div/li/div/div[2]/button', '/html/body/div[5]/div/div/div[2]/ul/div/li/div/div[2]/button' ] elms = es.get_elms_by_xpaths(driver, xpaths) # フォロー解除のループ for i, elm in enumerate(reversed(elms)): # 解除数に到達したらループ終了 if(i >= release_follow): break elm.click() # フォロー中ボタンクリック es.wait(1) # フォローをやめるボタンをクリック release_xpaths = [ '/html/body/div[5]/div/div/div/div[3]/button[1]', '/html/body/div[6]/div/div/div/div[3]/button[1]' ] release_elm = es.get_elm_by_xpaths(driver, release_xpaths) release_elm.click() es.wait(1) # エラー時の動作 except: function = sys._getframe().f_code.co_name message = 'フォロー解除中にエラーが起きました。' es.notice_error(module, function, message)