python使用beautifulsoup从爱奇艺网抓取视频播放

yipeiwu_com7年前Python爬虫

复制代码 代码如下:

import sys
import urllib
from urllib import request
import os
from bs4 import BeautifulSoup

class DramaItem:
    def __init__(self, num, title, url):
        self.num = num
        self.title = title
        self.url = url
    def __str__(self):
        return self.num + '    ' + self.title
    def openDrama(self):
        os.startfile(self.url)

response = urllib.request.urlopen('http://www.iqiyi.com/a_19rrgja8xd.html')
html = response.read()
soup = BeautifulSoup(html)
dramaList = soup.findAll('div', attrs={'class':'list_block1 align_c'})
dramaItems = []

if(dramaList):
    lis = dramaList[0].findAll('li')
    for li in lis:
        ps = li.findAll('p')
        description = ps[1].text if len(ps)>1 else ''
        num = ps[0].find('a').text
        url = ps[0].find('a')['href']
        di = DramaItem(num, description, url)
        dramaItems.append(di)

for di in dramaItems:
    print(di)
diLen = len(dramaItems)
userChoice = int(input('input number to watch the drama:'))
if userChoice >= 1 and userChoice <=diLen:
    dramaItems[userChoice-1].openDrama()



相关文章

python爬虫 urllib模块反爬虫机制UA详解

python爬虫 urllib模块反爬虫机制UA详解

方法: 使用urlencode函数 urllib.request.urlopen() import urllib.request import urllib.parse url =...

python爬虫之线程池和进程池功能与用法详解

python爬虫之线程池和进程池功能与用法详解

本文实例讲述了python爬虫之线程池和进程池功能与用法。分享给大家供大家参考,具体如下: 一、需求 最近准备爬取某电商网站的数据,先不考虑代理、分布式,先说效率问题(当然你要是请求的太...

python爬虫简单的添加代理进行访问的实现代码

python爬虫简单的添加代理进行访问的实现代码

在使用python对网页进行多次快速爬取的时候,访问次数过于频繁,服务器不会考虑User-Agent的信息,会直接把你视为爬虫,从而过滤掉,拒绝你的访问,在这种时候就需要设置代理,我们可...

python解决网站的反爬虫策略总结

本文详细介绍了网站的反爬虫策略,在这里把我写爬虫以来遇到的各种反爬虫策略和应对的方法总结一下。 从功能上来讲,爬虫一般分为数据采集,处理,储存三个部分。这里我们只讨论数据采集部分。 一...

使用python BeautifulSoup库抓取58手机维修信息

直接上代码: 复制代码 代码如下:#!/usr/bin/python# -*- coding: utf-8 -*- import urllib import os,datetime,st...