你好早上好/晚上好!我想问,有没有一种方法来区分这两种类型的方式告诉那些通道不存在?我正在创建一个工具来查找电报上现有的通道。这里有一些例子。
当我尝试运行我的代码时,不存在的通道仍然算作现有通道。
下面是使用的代码,来区分这2种类型的方式电报告诉通道不存在。我用 selenium 和 chrome 驱动程序的帮助下找到现有的电报通道。
for ss in cli1:
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
driver.maximize_window()
driver.implicitly_wait(10)
driver.get(f"https://t.me/{ss}")
try:
if WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '/html/body/div[2]/div[2]/div/div/div[1]/div[2]/a/div'))):
print(f'URL https://t.me/{ss} is not available')
Not_Exist.append(ss)
elif WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '/html/body/div[2]/div[2]/div/div[2]/a'))):
print(f'URL https://t.me/{ss} is not available')
Not_Exist.append(ss)
except:
print(f'URL https://t.me/{ss} is valid')
exists.append(ss)
driver.quit()
sleep(5)
是否有一种方法,对于一个不存在的电报信道仍然说没有可用,而不是使网站可用,但它根本没有任何信道。这里是链接的例子。不存在的网站1 https://t.me/minecraft
现有的网站https://t.me/minecraftapkdownload
不存在的网站2 https://telegram.org/
谢谢你的帮助!
1条答案
按热度按时间dauxcl2d1#
在代码的try块中,进行以下更改
我建议您使用由类名/ID等组成的路径。即使对GUI进行最小的更改,
/html/body/div[2]/div[2]/div/div/div[1]/div[2]/a/div
等路径也很容易引发错误在上面的代码中,我假设如果通道有效,则显示View in Telegram按钮,而对于所有其它页面,则不显示此类按钮。
按钮的类是“tgme_action_button_new shine”
代码检查此按钮是否存在,如果存在,则将页面添加到有效列表,否则添加到无效列表