Python запрашивает html напечатанный ответ в массиве - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь проверить, содержит ли ссылка http, и распечатать URL.

import requests
from requests_html import HTMLSession
import sys

link = "http://www.tvil.me/view/93/4/8/v/%D7%90%D7%99%D7%99_%D7%96%D7%95%D7%9E%D7%91%D7%99_IZombie.html"
enter_episodes = HTMLSession().get(link)
page = enter_episodes.html
s = page.xpath("//*[@class='view-watch-button']/a")
for l in s:
    link = l.links
    if link != "set()":
        print(link)

Ответ:

{'http://streamcloud.eu/ga4m4hizbrfb/iZombie.S04E08.HDTV.x264-SVA.mkv.html'}
{'http://uptostream.com/77p26f7twwhe'}
set()
{'https://clipwatching.com/aog2ni06rzjt/rrFhepnbFfpt6xg.mkv.html'}
set()
[Finished in 1.7s]

Я пытался удалить ответ set() и получить только ссылку без {' и '}.

1 Ответ

0 голосов
/ 03 августа 2018

Вам просто нужно убедиться, что длина набора больше одного, а затем вывести его:

import requests
from requests_html import HTMLSession
import sys

link = "http://www.tvil.me/view/93/4/8/v/%D7%90%D7%99%D7%99_%D7%96%D7%95%D7%9E%D7%91%D7%99_IZombie.html"
enter_episodes = HTMLSession().get(link)
page = enter_episodes.html
s = page.xpath("//*[@class='view-watch-button']/a")
for l in s:
    link = l.links
    if len(link) > 0: # make sure it has a value
        print(link.pop()) # get the last value (in your case, the only one)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...