Python在数组中请求html打印响应

时间:2018-05-03 23:54:23

标签: python python-3.x python-requests python-requests-html

我正在尝试检查链接是否包含http并打印网址。

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 :(得分:0)

您只需要确保集合的长度大于一个,然后将其弹出即可:

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)