成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python爬取電子課本,送給居家上課的孩子們

開發(fā) 后端
今天我們就利用python的爬蟲功能,把網(wǎng)絡鏈接的課本爬下來,再做成PDF格式的本地文件,讓孩子們隨時都能看。

[[316679]]

在這個全民抗疫的日子,中小學生們也開啟了居家上網(wǎng)課的生活。很多沒借到書的孩子,不得不在網(wǎng)上看電子課本,有的電子課本是老師發(fā)的網(wǎng)絡鏈接,每次打開網(wǎng)頁去看,既費流量,也不方便。今天我們就利用python的爬蟲功能,把網(wǎng)絡鏈接的課本爬下來,再做成PDF格式的本地文件,讓孩子們隨時都能看。本文案例爬取的網(wǎng)絡課本見下圖: 

python爬取電子課本,送給居家上課的孩子們
圖1 電子課本首頁

實現(xiàn)思路為兩部分:

  • 用python從網(wǎng)站爬取全部課本圖片;
  • 將圖片合并生成PDF格式文件。

具體過程:

一、爬取課本圖片

爬蟲4流程:發(fā)出請求——獲得網(wǎng)頁——解析內(nèi)容——保存內(nèi)容。

根據(jù)上篇python批量爬取網(wǎng)絡圖片里講過的知識,網(wǎng)頁里的圖片有單獨的網(wǎng)址,爬取圖片時需要先爬取出圖片網(wǎng)址,再根據(jù)圖片網(wǎng)址爬取圖片。

1、發(fā)出請求:

首先找出合適的網(wǎng)址URL,因是靜態(tài)網(wǎng)頁網(wǎng)址,我們可直接用瀏覽器地址欄的網(wǎng)址,下圖2中紅框位置即為要用的網(wǎng)址,復制下來就行。 

python爬取電子課本,送給居家上課的孩子們
圖2 瀏覽器地址欄網(wǎng)址可用于發(fā)出請求

網(wǎng)頁網(wǎng)址為:http://www.shuxue9.com/beishida/cz8x/ebook/1.html

2、發(fā)出請求獲得響應:

  1. url = http://www.shuxue9.com/beishida/cz8x/ebook/1.htmlresponse = requests.get(url) 

3、解析響應獲得網(wǎng)頁內(nèi)容:

  1. soup = BeautifulSoup(response.content, 'lxml'

4、解析網(wǎng)頁內(nèi)容,獲得圖片網(wǎng)址:

  1. jgp_url = soup.find('div', class_="center").find('a').find('img')['src'

5、向圖片網(wǎng)址發(fā)出訪問請求,并獲得圖片(因為該網(wǎng)址僅有圖片,不需用find解析):

  1. jpg = requests.get(jgp_url).content 

6、保存圖片:

  1. f = open(set_path() + number + '.jpg','wb')f.write(jpg) 

其中,set_path()是提前建好的用于存放圖片的路徑,代碼見下,也可直接寫上想用的路徑:

  1. def set_path():    path = r'e:/python/book'    if not  
  2. os.path.isdir(path):        os.makedirs(path)    paths = path+'/'    
  3.  return(paths) 

7、存在問題:

以上就完成了課本圖片的爬取,我們打開文件夾,發(fā)現(xiàn)只有一張圖片被下載了,后面的都沒。這是因為瀏覽網(wǎng)頁時,每個頁面都有不同的網(wǎng)址,我們試著分析一下,發(fā)現(xiàn)電子課本的每一頁網(wǎng)址很有規(guī)律:

  • 第1頁網(wǎng)址:http://www.shuxue9.com/beishida/cz8x/ebook/1.html
  • 第2頁網(wǎng)址:http://www.shuxue9.com/beishida/cz8x/ebook/2.html
  • ......
  • 第n頁網(wǎng)址:http://www.shuxue9.com/beishida/cz8x/ebook/n.html

每頁上的圖片網(wǎng)址各不相同,沒規(guī)律。我們可以根據(jù)規(guī)律用循環(huán)方式,對網(wǎng)址發(fā)起訪問,獲得圖片后,自動循環(huán)訪問下一個網(wǎng)址......最終獲得全部圖片。

8、設置循環(huán)提取:

在以上全部過程納入到一個for循環(huán)里,根據(jù)網(wǎng)頁,我們可以看到共有152頁,設置循環(huán)后完整代碼為:

  1. import requests , osfrom bs4 import BeautifulSoupfor i in range(1,  
  2. 153):# 發(fā)出請求    url = "http://www.shuxue9.com/beishida/cz8x/ebook 
  3. /{}".format(i)+".html"    response = requests.get(url)# 獲得網(wǎng)頁    
  4.  soup = BeautifulSoup(response.content, 'lxml')# 解析網(wǎng)頁得到圖片網(wǎng)址 
  5.     jgp_url = soup.find('div', class_="center").find('a').find('img'
  6. ['src']# 發(fā)出請求解析獲得圖片    jpg = requests.get(jgp_url).content#  
  7. 設置圖片保存路徑    p = r'e:/python-book'    if not os.path.isdir(p): 
  8.         os.makedirs(p)# 保存圖片    f = open(p + '/' + str(i) +  
  9. '.jpg''wb')    f.write(jpg)print("下載完成"

運行程序,即可一次下載全部課本圖片,效果為: 

python爬取電子課本,送給居家上課的孩子們
圖3 運行程序下載圖片

 

python爬取電子課本,送給居家上課的孩子們
圖4 下載好的圖片

二、將圖片合并生成PDF格式文件

圖片下載完成后,將圖片生成PDF格式才方便使用。網(wǎng)上有專門的軟件,但免費的試用版只能合并幾張圖片。今天教大家一個免費且常用的OFFICE—ppt軟件來將多張圖片合并成一個PDF格式文件。

新建一個PowerPoint空白文件,點擊插入——相冊——新建相冊, 

python爬取電子課本,送給居家上課的孩子們

在彈出的窗體里,點擊左上角的“文件/磁盤”,將剛才下載的圖片全部導入進去,導入后的效果如下圖右側(cè)紅框樣式,然后點擊“創(chuàng)建”,保存文件時另存為PDF格式即可。 

python爬取電子課本,送給居家上課的孩子們

總結(jié):

至此,從網(wǎng)頁爬取電子課本圖片,生成PDF格式的本地文件就全部完成了。其中,如何找到并提取網(wǎng)頁中的圖片網(wǎng)址,在本頭條上一篇文章里已有詳述,有疑問的可查閱或留言交流。

另分享一個從網(wǎng)頁內(nèi)容中找到圖片網(wǎng)址的簡便方法:在打開的開發(fā)者工具界面,點擊左上角的箭頭符號,然后在網(wǎng)頁上點擊想要查找網(wǎng)址的圖片,會自動高亮顯示圖片網(wǎng)址所在位置。如下所示: 

python爬取電子課本,送給居家上課的孩子們

 

 

 

責任編輯:未麗燕 來源: 今日頭條
相關(guān)推薦

2012-06-27 14:38:32

網(wǎng)絡問題飛魚星

2011-02-22 10:41:17

2014-07-23 10:02:56

老式電腦ENIAC

2011-09-13 11:17:43

iPad應用

2015-04-28 10:44:40

編程孩子編程

2018-07-25 16:24:17

區(qū)塊鏈疫苗災害事故

2019-01-18 12:18:31

編程語言Python

2019-03-26 09:00:43

樹莓派編程Linux

2020-11-30 16:53:43

新華三

2019-09-19 15:43:35

人工智能AI

2018-10-08 14:35:01

Linux游戲教育軟件

2017-05-31 09:57:00

潤乾張北希望小學孩子

2022-03-05 12:08:17

干擾器斷網(wǎng)

2021-06-21 16:29:53

送書助學

2014-12-19 15:54:19

微博

2012-12-24 23:30:18

飛魚星WLAN無線路由器

2009-12-07 16:12:32

中文Python中文編程
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 日本精品久久 | 久久亚洲天堂 | 偷拍自拍网址 | 91 在线| av中文在线观看 | 国产一区免费视频 | 在线观看视频中文字幕 | 欧美视频 亚洲视频 | 欧美日韩福利视频 | 成人高清视频在线观看 | 草草视频在线免费观看 | 91精品国产91久久久久久吃药 | 久久999 | 91av在线看 | 日本福利在线观看 | 成人午夜高清 | 欧州一区二区三区 | 2018天天干天天操 | 久久久精品网站 | 精品久久国产老人久久综合 | 欧美精品久久久 | 国偷自产av一区二区三区 | 欧美区在线 | 91久久北条麻妃一区二区三区 | 国产亚洲精品精品国产亚洲综合 | 中文字幕av网 | 在线视频中文字幕 | 欧美日高清 | 91佛爷在线观看 | 特黄毛片 | 成人久久 | 亚洲精品一 | 久久99蜜桃综合影院免费观看 | 国产精品久久久久久久久久了 | 污片在线免费观看 | 国产精品免费一区二区三区四区 | 香蕉久久a毛片 | 国产羞羞视频在线观看 | 中文字幕视频在线观看 | 一区二区三区高清不卡 | 天天综合久久网 |