孤荷凌寒自學python第七十六天開始寫Python的第一個爬蟲6python
(完整學習過程屏幕記錄視頻地址在文末)編程
今天在上一天的基礎上繼續完成對個人第一個代碼程序的書寫。網絡
不過因爲對python-docx模塊的不熟悉,事實上今天的學習變成了純粹對docx模塊的探索和研究了。編程語言
1、對docx模塊的學習筆記ide
(一)docx文檔中的樣式結構常量學習
from docx.enum.style import WD_STYLE_TYPE測試
WD_STYLE_TYPE中包含了docx文檔須要的全部樣式 (包括段落、文字、表格)的枚舉常量集字體
目前已知分爲:段落style,文字style,表格style至少三個子集spa
(二)docx文檔的對齊方式常量日誌
from docx.enum.text import WD_ALIGN_PARAGRAPH
WD_ALIGN_PARAGRAPH中包含了全部docx文檔須要的全部對齊方式的枚舉常量集,不過在vscode中顯示有錯,然而事實上又可以執行。
WD_ALIGN_PARAGRAPH.CENTER #水平居中對齊
WD_ALIGN_PARAGRAPH.LEFT #水平左對齊
WD_ALIGN_PARAGRAPH.RIGHT #水平右對齊
這三個常量 通常賦值給:
段落對象.alignment=對齊方式常量
(三)docx文檔的行間距模式設置常量
from docx.enum.text import WD_LINE_SPACING
WD_LINE_SPACING中包含了docx文檔所需行間距的單位枚舉常量集(包括:單倍行距,1.5倍行距,固定 值,最小值等)
(四)docx文檔的數值計量單位
from docx.shared import Inches #設置word中相關內容的計量單位爲:英寸
from docx.shared import Pt #設置word中相關內容的計量單位爲:磅
應當還有其它單位,不過Pt(磅)是word文檔中的默認使用的單位,字體/行間距等都默認使用Pt做爲計量單位。
(五)獲取word中預設style的方法
document = Document()
styles = document.styles
此時變量style中已經包含了全部可用的預設style,
經過如下方式能夠訪問其中的內含style
styles['預設樣式名稱']
如:
styles['Normal']
表示:’Normal’這個樣式
(六)對word中的預設style進行修改
styles['Normal'].font.name='黑體'
styles['Normal'].font.size=Pt(16)
styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'黑體')
這樣就把’Normal‘這個樣式中的字體和字體大小修改了。
最後一句:
styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'黑體')
不知道是什麼 意思。
對預設style的修改,只在當前代碼 塊中有效。
(七)、在docx文檔的對象中使用這些style
如:
p=document.add_paragraph(r'要設置成段落內容的文本', style ='Normal')
這樣就設置p這個段落的style爲:'Normal'。
2、今天測試docx模塊中對象各類屬性方法測試的代碼。詳細過程見文末屏幕錄像。
```
from docx.enum.style import WD_STYLE_TYPE #全部樣式 (包括段落、文字、表格)的枚舉常量集
from docx.enum.text import WD_ALIGN_PARAGRAPH #對齊方式 的枚舉常量集,不過在vscode中顯示有錯,事實又可以執行
from docx.enum.text import WD_LINE_SPACING #行間距的單位枚舉常量集(包括:單倍行距,1.5倍行距,固定 值,最小值等)
from docx.oxml.ns import qn
from docx import *
from docx.shared import Inches #設置word中相關內容的計量單位爲:英寸
from docx.shared import Pt #設置word中相關內容的計量單位爲:磅
document = Document()
styles = document.styles
styles['Normal'].font.name='黑體'
styles['Normal'].font.size=Pt(16)
styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'黑體')
#生成全部段落樣式
#for s in styles:
#if s.type == WD_STYLE_TYPE:
# try:
p=document.add_paragraph(r'邊學習邊測試文件夾\自學PYTHON部分\0076第七十六天爬蟲實戰6斷落樣式: ', style ='Normal')
p2=document.add_paragraph(r'邊學習邊測試文件夾\自學PYTHON部分\0076第七十六天爬蟲實戰6斷落樣式: ', style ='Normal')
p3=document.add_paragraph(r'邊學習邊測試文件夾\自學PYTHON部分\0076第七十六天爬蟲實戰6斷落樣式: ', style ='Normal')
p.alignment=WD_ALIGN_PARAGRAPH.CENTER #水平居中對齊
p2.alignment=WD_ALIGN_PARAGRAPH.LEFT #水平左對齊
p3.alignment=WD_ALIGN_PARAGRAPH.RIGHT #水平右對齊
p.line_spacing_rule=p2.line_spacing_rule=p3.line_spacing_rule=WD_LINE_SPACING.EXACTLY #固定值
p.line_spacing=p2.line_spacing=p3.line_spacing=Pt(22)
p.space_before=p2.space_before=p3.space_before=Pt(0)
p.space_after=p2.space_after=p3.space_after=Pt(0)
#以上四行代碼都沒有設置成功,沒有任何效果
# except:
# pass
document.save('_段落樣式.docx')
```
——————————
今天整理的學習筆記完成,最後例行說明下個人自學思路:
根據過去多年我自學各類編程語言的經歷,認爲只有真正體驗式,解決實際問題式的學習纔會有真正的效果,即讓學習實際發生。在2004年的時候我開始在一個鄉村小學自學電腦 並學習vb6編程語言,沒有學習同伴,也沒有高師在上,甚至電腦都是孤島(鄉村那時尚未網絡),有的只是一本舊書,在痛苦的自學摸索中,我找到適應本身零基礎的學習方法:首先是每讀書的一小節就做相應的手寫筆記,第二步就是上機測試每個筆記內容是否實現,其中會發現書中講的其實有出入或錯誤,第三步就是在上機測試以後,將筆記改成電子版,造成最終的修訂好的正確無誤的學習筆記 。
經過反覆嘗試錯誤,在那個沒有分享與交流的黑暗時期我摸黑學會了VB6,爾後接觸了其它語言,也曾聽過付費視頻課程,結果發現也許本身學歷果真過低,就算是零基礎的入門課程,其實也難以跟上進度,講師的教學多數出現對初學者的實際狀況並不瞭解的狀況,何況學習者的個體也存在差別呢?固然更可怕的是收費課程的價格每每是本身難以承受的。
因而個人全部編程學習都改成了自學,繼續本身的三步學習筆記法的學習之路。
固然自學的最大問題是會走那麼多的彎路,沒有導師直接輸入式的教學來得直接,好在網絡給咱們帶來無限搜索的機會,你們在網絡上的學習日誌帶給咱們共享交流的機會,而QQ羣等交流平臺、網絡社區的成立,咱們能夠一塊兒自學,互相批評交流,也能夠得到更有效,更自主的自學成果。
因而我以人生已過半的年齡,決定繼續個人編程自學之路,開始學習python,只但願與你們共同交流,一我的的獨行是可怕的,只有一羣人的共同前進纔是有但願的。
誠摯期待您的交流分享批評指點!歡迎聯繫我加入從零開始的自學聯盟。
這個時代互聯網成爲了一種基礎設施的存在,因而原本在孤獨學習之路上的咱們變得再也不孤獨,由於網絡就是一個新的客廳,咱們時刻均可以進行沙龍活動。
很是樂意能與你們一塊兒交流本身自學心得和發現,更但願你們可以對我學習過程當中的錯誤給予指點——是的,這樣我就能有許多免費的高師了——這也是分享時代,社區時代帶來的好福利,我相信你們會的,是吧!
根據徹底共享的精神,開源互助的理念,個人我的自學錄製過程是所有按4K高清視頻錄製的,從手寫筆記到驗證手寫筆記的上機操做過程全程錄製,但由於4K高清文件太大均超過5G以上,因此沒法上傳至網絡,若有須要可聯繫我QQ578652607對傳,樂意分享。上傳分享到百度網盤的只是壓縮後的720P的視頻。
個人學習過程錄像百度盤地址分享以下:(清晰度:1280x720)
連接:https://pan.baidu.com/s/1bwA288OvlO4IhGkSorAAIg
提取碼:923e
Bilibili:
https://www.bilibili.com/video/av40966424/
喜馬拉雅語音筆記: