吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4533|回复: 30
收起左侧

[Python 转载] 使用Python来获取jk资源

[复制链接]
QingYi. 发表于 2021-6-26 19:36
代码很简单说一下感想吧

写代码切记不能操之过急了,一步一步来,思考怎么去构思这个代码再去做。

这个代码是我改改删删才做好的,写了删 删了写。

因为写的实在是太垃圾了,密密麻麻的,后续debug眼睛都看花了,分开写成函数,debug起来容易找,看起来又舒服。

其实这个代码可以直接丢给多线程去处理的,或者直接上scrapy框架。

在进入主页面的子页面的时候就可以去download开启线程了,然后找到主页面的的子页面的下一页的时候也可以进行download的了,我就没加了。

代码里面不懂的可以留言


结果图:
jk_downlad.jpg

代码:
[Python] 纯文本查看 复制代码
import os
import urllib
import requests
from lxml import etree
import re


def download(url):
    # print(url)
    resp = requests.get(url).text
    html = etree.HTML(resp)
    # 找到地址
    pic = html.xpath('//*[@id="big-pic"]/p//img/@src')[0]
    # 找到name
    name = pic.split("/")[-1]
    # download
    urllib.request.urlretrieve(pic, "pic/{}".format(name))
    print("{}下载完毕".format(name))


def sub_page_pic(url, page):
    # 截取需要替换的url
    split_url = url.split("/")[-1]
    # 把.后面的数字提取出来,然后再拼接
    num_url = url.split(".")[-2].split("/")[-1]
    for i in range(2, page + 1):
        """
        第一页
        [url]https://www.mmonly.cc/ktmh/dmmn/96196.html[/url]
        第二页  后面以此类推
        [url]https://www.mmonly.cc/ktmh/dmmn/96196_2.html[/url]
        """
        # 这里是拼接替换 具体可以分析一下网站是怎么组成的 如上
        change_url = url.replace(split_url, num_url + "_%d.html" % i)
        # 搞完之后直接丢进去download
        download(change_url)


# 找到所有下一页的内容
def next_page(sub_page_url):
    resp = requests.get(sub_page_url)
    resp.encoding = "gb2312"
    # 匹配有几页
    re_match = re.search(r".*?共(\d+)页", resp.text)
    # 页数转int 然后 把子页面和 子页面的页数丢给下一个函数去处理
    all_page = int(re_match.group(1))
    sub_page_pic(sub_page_url, all_page)


def first():
    url = "https://www.mmonly.cc/tag/jkzf/"
    resp = requests.get(url)
    resp.encoding = "gb2312"

    html = etree.HTML(resp.text)
    href = html.xpath('//*[@id="infinite_scroll"]/div/div[1]/div/div[1]/a/@href')
    # 首先我们需要找到最主页面的page 然后迭代page
    for item in href:
        resp = requests.get(item)
        # 设置编码 不然找不到
        resp.encoding = "gb2312"
        # 如果下一页存在的话,我们去迭代所有的下一页,找到之后再放入download里面去下载
        if "下一页" in resp.text:
            # 需要转换成str
            next_page(str(item))
        # 下载当前的页面 不包括下一页的内容
        download(str(item))


if __name__ == '__main__':
    if not os.path.exists("pic"):
        os.mkdir("pic")
    first()

免费评分

参与人数 5吾爱币 +9 热心值 +5 收起 理由
woyunsile + 1 + 1 谢谢@Thanks!
deyen + 1 + 1 我很赞同!
dreamcrazy + 1 + 1 我很赞同!
lsy832 + 1 + 1 谢谢@Thanks!
苏紫方璇 + 5 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Fargolee 发表于 2021-7-12 08:58
如何下载不同标签的图片?修改jkzf吗
 楼主| QingYi. 发表于 2021-6-27 10:29
lihu5841314 发表于 2021-6-27 08:56
加油  奥利给   去搞搞彼岸图网   我翻车好久了  4K加密  验证

链接发来
天空の幻像 发表于 2021-6-26 19:45
南归不NG 发表于 2021-6-26 20:13
看一下url我就跑
芥末绿茶 发表于 2021-6-26 20:38

哈哈哈,就你眼睛尖
wchp123 发表于 2021-6-26 20:52
这个url真不错
香芋 发表于 2021-6-26 21:09
这效果图我不是很明白,能多放几张吗
hhhhpaa 发表于 2021-6-26 22:12
url收了
lsy832 发表于 2021-6-26 22:19
收藏了一个好东西
dreamcrazy 发表于 2021-6-26 22:31
谢谢LZ分享 当然我的本意不是为了这些图片 只是为了学习技术
 楼主| QingYi. 发表于 2021-6-26 22:55
Darkline 发表于 2021-6-26 22:24
反馈一下  可以考虑增加分类存放   目前是统一存放在pic一个文件夹里的。

我靠好主意 下次一定
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-15 07:22

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表