<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          5分鐘擼了個(gè)小小爬蟲....

          共 1985字,需瀏覽 4分鐘

           ·

          2019-12-06 23:21

          咪哥雜談

          d14ab317567c24708f707f2697af0867.webp

          本篇閱讀時(shí)間約為 4 分鐘。


          1

          前言


          這幾天在用“必應(yīng)”搜索時(shí),發(fā)現(xiàn)必應(yīng)的背景圖片挺好看的,有的是風(fēng)景,有的是動(dòng)物。。。于是產(chǎn)生了一個(gè)想法,爬下來當(dāng)做桌面背景圖吧。。


          由于是每天必應(yīng)的圖片都會(huì)變,所以后續(xù)結(jié)合電腦自帶的定時(shí)任務(wù),可以達(dá)到每天自動(dòng)抓取圖片的效果。


          2

          開工


          簡單的分析下:必應(yīng)首頁。


          89b107c4b4d7884ff498b18210960588.webp


          打開 F12 ,找到對(duì)應(yīng)的請(qǐng)求,可以很容易的看到有這么個(gè)鏈接,然后點(diǎn)一下,就會(huì)新打開一個(gè)頁面,此時(shí)顯示的就是背景圖片。
          如何下載呢?其實(shí)很簡單,說下邏輯。

          requests庫請(qǐng)求主頁,正則匹配地址,用 requests 請(qǐng)求,將返回的 content 以二進(jìn)制的形式寫入文件,保存為圖片。

          核心代碼:
          url = 'https://cn.bing.com'headers = {    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_1) '                  'AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Safari/605.1.15'}r = requests.get(url=url, headers=headers)#?正則匹配到?url 地址a = re.findall(r'rel="preload" href="(.*?)" as="image"', r.text)if a:????#?拼接?https://cn.bing.com/xxxxxx圖片的地址    picture_url = parse.urljoin(url, a[0])    print(f'當(dāng)前圖片地址:{picture_url}')    r_picture = requests.get(url=picture_url, headers=headers)    write_file(file, r_picture.content) # 寫入文件

          執(zhí)行后的結(jié)果:

          e3e982b852bdeaa5543ee36fa6365376.webp


          主要是正則表達(dá)式,如何書寫,匹配出來,用 urllib 的 urljoin 方法拼接下圖片地址即可。可以看下核心代碼的相關(guān)注釋。


          3

          定時(shí)任務(wù)


          Python代碼一共 25 行,關(guān)鍵是如何利用系統(tǒng)定時(shí)來制造每天觸發(fā)的效果。
          windows系統(tǒng):
          如果你是 windows 環(huán)境,推薦看下這篇博客,之前是我總結(jié)的如何用 windows 定時(shí)執(zhí)行 Python 文件。

          https://blog.csdn.net/s740556472/article/details/78239204

          大咪的csdn博客


          Mac / Linux 系統(tǒng):
          了解 Linux 系統(tǒng)的同學(xué),一定知道有個(gè)自帶的系統(tǒng)工具,叫 crontab。
          使用方法,兩個(gè)。
          1. 編輯 crontab :

          crontab -e

          64fd2b2032684d4fffe00ed9919a4f2b.webp


          回車后,進(jìn)入內(nèi)容,用法和 vim 一樣,按下 i 即可編寫,然后 wq?保存。


          a761dbc7cbbdc79cc480980c4998a959.webp


          0 10 * * * /Users/sy/anaconda3/bin/python /Users/sy/PycharmProjects/python-tools/spider/bing_picture/crawl_bing.py > /Users/sy/PycharmProjects/python-tools/spider/bing_picture/log

          第一段,是cron特有的時(shí)間配置表達(dá)式,可以看下圖的簡介,順便給大家一個(gè)網(wǎng)址,可以在線查看其表達(dá)式的含義。而我腳本中寫的則是每天十點(diǎn)整執(zhí)行 Python。

          403c4fb3c6427c123383820e4357acf0.webp


          工具網(wǎng)址:
          https://tool.lu/crontab/

          寫完 cron 表達(dá)式,后面跟的其實(shí)就是 python xxx.py 這樣的命令,只不過,在 cron 中一定要寫絕對(duì)路徑,否則不生效。
          再執(zhí)行 python 命令的基礎(chǔ)上,我還追加了 > xxx.log 這樣,意思是將 python 腳本的打印內(nèi)容輸出到一個(gè)指定目錄的 log 文件里。

          2.?查看定時(shí)任務(wù)?crontab:
          crontab?-l

          433253e7302aab68ce8aa0227d6e7a41.webp


          cron -l 則是查看定時(shí)任務(wù)列表內(nèi)容的,可以看到有多少任務(wù)配置了。如果有多個(gè)定時(shí)腳本,則可以回車換行繼續(xù)添加即可。
          每日自動(dòng)抓取,導(dǎo)入圖片,換背景即可。

          5ac09650768acb27c915e9d43c5bd911.webp


          4

          總結(jié)


          嗯,這就是本次的 5 分鐘擼一個(gè)小爬蟲系列!
          本篇介紹的定時(shí)工具,其實(shí)用途很大,因?yàn)榛谙到y(tǒng)層面,所以不依賴于腳本,只要你電腦開著,就可以隨心所欲的觸發(fā)你寫的腳本,而不依賴你腳本本身使用代碼的定時(shí)任務(wù)!
          想看完整代碼的同學(xué),可以后臺(tái)回復(fù) bing ,即可獲得。







          ▼往期精彩回顧▼Python操作Word的入門教程Python調(diào)用百度API實(shí)現(xiàn)語音識(shí)別(二)Python調(diào)用百度API實(shí)現(xiàn)語音識(shí)別(一)



          9074a0b02c593424f4275a804474747d.webp你點(diǎn)的每個(gè)在看,我都認(rèn)真當(dāng)成了喜歡


          瀏覽 140
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人做爰高潮片免费漫画视频 | 亚洲免费在线看 | 熟妇乱伦网站 | 欧美成人精品一区二区三区在线看 | 天堂在线视频免费 |