V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Lyleaks
V2EX  ›  Python

一个人人影视的爬虫

  •  
  •   Lyleaks ·
    gnehsoah · 2014-11-27 14:17:53 +08:00 · 6900 次点击
    这是一个创建于 3651 天前的主题,其中的信息可能已经有所发展或是发生改变。
    写了个人人影视的爬虫练手,可以抓取指定美剧HR-HDTV的ed2k下载链接,代码写得有点挫。




    Github:https://github.com/Lyleaks/yyets-spider
    第 1 条附言  ·  2014-11-27 15:52:20 +08:00
    win下的把sys.argv[1]改成sys.argv[1].decode('gbk')就行了
    20 条回复    2014-11-28 22:16:10 +08:00
    d0a1ccec
        1
    d0a1ccec  
       2014-11-27 14:29:39 +08:00
    兄台用的这是ubuntu?
    mahone3297
        2
    mahone3297  
       2014-11-27 14:43:57 +08:00
    这么一说,我也写了个。。。参数是url
    不过我觉得,现在的关键问题是,上不了yyets。。。

    ```python
    #! /usr/bin/env python
    # -*- coding:utf-8 -*-

    import os, sys
    import re
    import urllib
    import urllib2
    import codecs
    import zipfile
    from BeautifulSoup import BeautifulSoup

    # 获取 yyets 下载地址
    def getYyetsDownloadUrlsByResourceId(resourceId, format='HR-HDTV'):
    url = 'http://www.yyets.com/resource/%d' % (resourceId)
    f = urllib2.urlopen(url)
    soup = BeautifulSoup(''.join(f))
    for ul in soup.findAll('ul', {'class': 'resod_list'}):
    print "season %s" % ul.get('season')
    for li in ul.findAll('li'):
    if format == li.get('format'):
    for a in li.findAll('a'):
    if u'迅雷' == a.text:
    print a.get('thunderhref')

    if __name__ == '__main__':
    resourceId = int(sys.argv[1])
    getYyetsDownloadUrlsByResourceId(resourceId)
    ```
    line
        3
    line  
       2014-11-27 14:50:19 +08:00
    ./yyets_spider.py 形尸走肉
    Not Found
    tanywei
        4
    tanywei  
       2014-11-27 14:58:44 +08:00
    诶 混PT多了,RMVB、MKV都不看了, 哈哈
    g0thic
        5
    g0thic  
       2014-11-27 15:12:24 +08:00   ❤️ 1
    @d0a1ccec kali linux 很多黑客喜欢用的,集成了很多渗透工具
    jy02201949
        6
    jy02201949  
       2014-11-27 15:22:23 +08:00
    win下提示编码不对。。。碰到编码问题就头疼
    leopanhf
        7
    leopanhf  
       2014-11-27 15:23:55 +08:00
    @mahone3297 没格式化。。。。放gist吧
    Lyleaks
        8
    Lyleaks  
    OP
       2014-11-27 15:55:27 +08:00
    Lyleaks
        9
    Lyleaks  
    OP
       2014-11-27 16:08:58 +08:00
    @line 行尸走肉,是根据搜索结果提取url的
    d0a1ccec
        10
    d0a1ccec  
       2014-11-27 16:58:46 +08:00
    @g0thic 谢谢。
    avatar
        11
    avatar  
       2014-11-27 17:24:27 +08:00
    @mahone3297 翻墙可以上 国外ip没有封
    zts1993
        12
    zts1993  
       2014-11-27 17:50:54 +08:00
    不错,支持。

    加上定时检查 ,自动下载就更棒啦。哈哈哈哈哈
    mahone3297
        13
    mahone3297  
       2014-11-27 18:15:38 +08:00
    @avatar 没翻墙啊,哎。。。
    @leopanhf 没翻墙,gist上不去。。。
    真不行,真要买vpn翻墙了。。。
    edwardaa
        14
    edwardaa  
       2014-11-27 19:33:33 +08:00
    @mahone3297 直接改hosts不就可以上了么。。。
    mahone3297
        15
    mahone3297  
       2014-11-27 21:25:13 +08:00
    @edwardaa 原理?给我个host?
    xdcr
        16
    xdcr  
       2014-11-27 23:13:06 +08:00 via iPhone
    @zts1993 定时检查,自定义追剧列表自动下载,自动下载匹配字幕。。。
    edwardaa
        17
    edwardaa  
       2014-11-28 19:39:18 +08:00
    @mahone3297 原理我是不懂,但是在host文件里面添加“27.255.82.19 www.yyets.com”即可
    pacino
        18
    pacino  
       2014-11-28 19:52:05 +08:00
    只能查剧不能查电影
    mahone3297
        19
    mahone3297  
       2014-11-28 20:49:21 +08:00
    @edwardaa 刚加了,试了,还是不行。。。
    edwardaa
        20
    edwardaa  
       2014-11-28 22:16:10 +08:00
    @mahone3297 实在不行你去网上搜人人影视 host 一大把,图文并茂可能你就OK了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1442 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 17:18 · PVG 01:18 · LAX 09:18 · JFK 12:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.