Day 30 工作排程与打包

30天的旅程就要在这边画上句点罗~
今天的影片内容为介绍两个实用的辅助工具—工作排程器与pyinstaller
有了它们,能让我们执行程序时更加便利,一起来一探究竟吧!

以下为影片中有使用到的程序码

#请将此程序码储存成PTT3.py
import requests, bs4

page = int(input("请输入想搜寻的页数:")) 
url_1 = "https://www.ptt.cc"
url_2 = "/bbs/Gossiping/index.html"

counter = 0
number = 0

while counter < page:

    headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.82 Safari/537.36'}
    cookies = {'over18':'1'}
    htmlfile = requests.get(url_1 + url_2, headers = headers, cookies = cookies)
    objsoup = bs4.BeautifulSoup(htmlfile.text, 'lxml')

    articles = objsoup.find_all('div', class_ = 'r-ent')

    for article in articles:

        title = article.find('a')
        author = article.find('div', class_ = 'author')
        date = article.find('div',  class_ = 'date')
    
        if title == None: #防止(本文已被删除) 的情形
            continue
        else:
            number +=1
            print("文章编号:", number)
            print("文章标题:", title.text)
            print("文章作者:", author.text)
            print("发文时间:", date.text)
            print("="*100)
            
    before = objsoup.find_all('a', class_ = 'btn wide')
    url_2 = before[1].get('href')
    counter += 1
    
input() #如果没有这个函式,使用工作排程器时执行完会直接关闭CMD视窗

要执行pyinstaller前,必须至CMD进行安装

pip install pyinstaller

开启CMD将程序进行打包

#请先建立一个package资料夹,将PTT3.py存入此资料夹
#请将C:\Users\ASUS\Desktop修改为package资料夹在您电脑中的路径
cd C:\Users\ASUS\Desktop\package  #移动至package资料夹
#请将C:\Users\ASUS\Desktop修改为package资料夹在您电脑中的路径
pyinstaller -F C:\Users\ASUS\Desktop\package\PTT3.py

谢谢大家这些日子的陪伴~我们有机会再见!/images/emoticon/emoticon37.gif
本篇影片及程序码仅提供研究使用,请勿大量恶意地爬取资料造成对方网页的负担呦!
如果在影片中有说得不太清楚或错误的地方,欢迎留言告诉我,谢谢您的指教。


<<:  【Day 29】我这不是来了吗 - 侦测指令混淆

>>:  28. 团队成功的要素是什麽?

[Day 18] 再访 HLP — 人(?)的表现是己欲立而立人

Being human means having doubts and yet still con...

16 - Logs - 挖掘系统内部发生的状况 (4/4) - 透过 Filebeat 收集 Infrastructure 中各种服务的细节资讯

Logs - 挖掘系统内部发生的状况 系列文章 (1/4) - Logs 与 Filebeat 的基...

App 里的广告运用的格式跟广告商,不同平台的收益差别

今天分享我们 App 里的广告运用的情况 广告格式 目前我们用的广告格式有 banner 横幅广告 ...

英文能力重要吗?

过去有份工作,在刚进入公司时,在公司内部用不到英文,但是随着组织异动,与外国客户以及跨国团队沟通。而...

为了转生而点技能-JavaScript,day23(Promise介绍

Promise:适用於非同步的运算上。 本身就是建构函式 console.log(Promise);...