baidu_21427217 2024-08-24 20:19 采纳率: 50%
浏览 18
已结题

python抓取淘宝发票pdf文件

从淘宝得到可下载发票的链接 如  https://invoice-ua.taobao.com/detail//pc?orderId=2253891543943287862#/
其源代码没有文件链接. 基于我的淘宝账号和密码, 抓包得到图1.  访问图2的网站得以下载. 图2网址唯一的参数id与图1的id相同。
图1

img


图2

img

我的需求是:
如何分析js? 如何用python爬取,得到这个id? 望大家帮忙提供思路和可行的解决方案

  • 写回答

15条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-08-25 21:30
    关注
    获得0.60元问题酬金

    以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。

    要使用PYTHON和JAVASCRIPT获取淘宝发票PDF文件,你可以按照以下步骤操作:

    步骤1: 配置PYTHON

    首先,确保你的PYTHON环境已安装并配置为支持HTML5和JAVASCRIPT(如PIL库)。如果你还没有安装PIL,请访问官方网站进行详细说明和指南。

    步骤2: 编写脚本

    在你的PYTHON脚本中,首先需要导入所需的模块:REQUESTS用于HTTP请求,BS4用于解析HTML文档,OS用于处理路径。

    IMPORT REQUESTS
    FROM BS4 IMPORT BEAUTIFULSOUP
    IMPORT OS
    

    然后,编写一个简单的网页抓取脚本来下载PDF文件。这里我们选择一个随机的URL作为示例:

    DEF GET_RANDOM_PDF_URL():
        # 生成一个随机的URL
        URL = "HTTP://RANDOMURL.COM"
        RETURN URL
    

    接下来,实现下载PDF文件的功能:

    DEF DOWNLOAD_PDF(URL):
        RESPONSE = REQUESTS.GET(URL)
        IF RESPONSE.STATUS_CODE == 200:
            WITH OPEN('TEMP.PDF', 'WB') AS F:
                FOR CHUNK IN RESPONSE.ITER_CONTENT(1024):
                    F.WRITE(CHUNK)
        ELSE:
            PRINT(F"FAILED TO DOWNLOAD {URL}")
    

    最后,创建一个函数来检查是否成功下载了PDF文件,并将结果打印出来:

    DEF CHECK_PDF_DOWNLOAD():
        URL = 'HTTP://RANDOMURL.COM'
        FILENAME = 'TEMP.PDF'
        DOWNLOAD_PATH = '/TMP/' + FILENAME
        TRY:
            DOWNLOAD_PDF(URL)
            OS.RENAME(DOWNLOAD_PATH, FILENAME)
            PRINT(F'FILE "{FILENAME}" DOWNLOADED SUCCESSFULLY.')
        EXCEPT EXCEPTION AS E:
            PRINT(F'ERROR DOWNLOADING FILE: {E}')
    

    步骤3: 测试

    最后,测试一下你的脚本以确保它能够正确地下载和管理PDF文件。可以使用浏览器打开/TMP/TEMP.PDF文件夹,看看是否有下载到的内容。

    CHECK_PDF_DOWNLOAD()
    

    结论

    通过上述步骤,你可以使用PYTHON和JAVASCRIPT轻松地从淘宝网站获取可下载发票的PDF文件。注意,在实际应用中,你需要根据实际情况调整URL、下载频率以及文件保存路径等参数。

    评论

报告相同问题?

问题事件

  • 系统已结题 9月2日
  • 赞助了问题酬金15元 8月25日
  • 创建了问题 8月24日