孤荷凌寒自学python第七十七天开始写Python的第一个爬虫7

(完整学习过程屏幕记录视频地址在文末)

今天在上一天的基础上继续完成对我的第一个代码程序的书写。

今天的学习仍然是在纯粹对docx模块的探索和研究。

一、对docx模块的学习笔记

(一)docx文档中的色彩控制

from docx.shared import RGBColor

此方法用于将三个数值(十进制,十六进制的三个数都行,三原色)生成色彩对象

用法是:

RGBColor(红色值,绿色值,蓝色值)

(二)为文字指定色彩,今天发现只能指定前景色

样式或对象.font.color.rgb=RGBColor(红色值,绿色值,蓝色值)

(三)给段落指定样式,多数样式的指定必须在段落创建前就预设好

昨天尝试在段落创建后再修改段落的行距模式,行距值,段前距,段后距等,通通失败。

今天经过学习尝试发现,应当先进行预设,然后,在创建段落时,通过第二个参数进行指定预设的样式即可生效。

(四)为段落预设的样式,全部在【paragraph_format】对象下,不像font等样式直接隶属于style对象。

例:

document.styles ['Normal'].paragraph_format.line_spacing_rule=WD_LINE_SPACING.MULTIPLE

这行代码更改了一个叫【normal】的world预设样式style的行距模式为多行行距模式。

二、今天继续测试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中相关内容的计量单位为:磅

from docx.shared import RGBColor #将三个数值生成色彩对象

document = Document()

#document.color.rgb=RGBColor(0,100,0)#这是错误 的设置页面背景的方法

styles = document.styles

s=styles['Normal']

s.font.name='黑体'

s.font.size=Pt(16)

s.font.color.rgb=RGBColor(0,100,0)

s._element.rPr.rFonts.set(qn('w:eastAsia'), u'黑体')

#s.paragraph_format.line_spacing_rule=WD_LINE_SPACING.EXACTLY #段落行距样式为固定值,必须指定行距值,否则就会变成 多倍行距 模式

#s.paragraph_format.line_spacing_rule=WD_LINE_SPACING.SINGLE #段落行距样式为单倍行距 模式

s.paragraph_format.line_spacing_rule=WD_LINE_SPACING.MULTIPLE #多倍行距,此模式的具体行间距由文字字号大小决定,如果后面指定了行距值,此多倍行距设置会被忽略,变成固定值模式

s.paragraph_format.line_spacing=Pt(22) #行距值

s.paragraph_format.space_before=Pt(10) #段前距

s.paragraph_format.space_after=Pt(20) #段后距

s.paragraph_format.first_line_indent=s.font.size * 2 #段落首行缩进量

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 #水平右对齐

document.save('_段落样式.docx')

```

今天花了相当大一部分时间想更改word文档页面以及文字的背景色,结果均告失败,甚至我查看了docx模块的document类的源代码,发现好像根本不存在这样的属性似的,或者是我自己水平太差,找不到,网络搜索许久也毫无收获(详见学习过程录屏视频中的“悲壮”过程)。

在此恳请知道的高手能够出手相助,谢谢!!

——————————

今天整理的学习笔记完成,最后例行说明下我的自学思路:

根据过去多年我自学各种编程语言的经历,认为只有真正体验式,解决实际问题式的学习才会有真正的效果,即让学习实际发生。在2004年的时候我开始在一个乡村小学自学电脑 并学习vb6编程语言,没有学习同伴,也没有高师在上,甚至电脑都是孤岛(乡村那时还没有网络),有的只是一本旧书,在痛苦的自学摸索中,我找到适应自己零基础的学习方法:首先是每读书的一小节就作相应的手写笔记,第二步就是上机测试每一个笔记内容是否实现,其中会发现书中讲的其实有出入或错误,第三步就是在上机测试之后,将笔记改为电子版,形成最终的修订好的正确无误的学习笔记 。

通过反复尝试错误,在那个没有分享与交流的黑暗时期我摸黑学会了VB6,尔后接触了其它语言,也曾听过付费视频课程,结果发现也许自己学历果然太低,就算是零基础的入门课程,其实也难以跟上进度,讲师的教学多数出现对初学者的实际情况并不了解的情况,况且学习者的个体也存在差异呢?当然更可怕的是收费课程的价格往往是自己难以承受的。

于是我的所有编程学习都改为了自学,继续自己的三步学习笔记法的学习之路。

当然自学的最大问题是会走那么多的弯路,没有导师直接输入式的教学来得直接,好在网络给我们带来无限搜索的机会,大家在网络上的学习日志带给我们共享交流的机会,而QQ群等交流平台、网络社区的成立,我们可以一起自学,互相批评交流,也可以获得更有效,更自主的自学成果。

于是我以人生已过半的年龄,决定继续我的编程自学之路,开始学习python,只希望与大家共同交流,一个人的独行是可怕的,只有一群人的共同前进才是有希望的。

诚挚期待您的交流分享批评指点!欢迎联系我加入从零开始的自学联盟。

这个时代互联网成为了一种基础设施的存在,于是本来在孤独学习之路上的我们变得不再孤独,因为网络就是一个新的客厅,我们时刻都可以进行沙龙活动。

非常乐意能与大家一起交流自己自学心得和发现,更希望大家能够对我学习过程中的错误给予指点——是的,这样我就能有许多免费的高师了——这也是分享时代,社区时代带来的好福利,我相信大家会的,是吧!

根据完全共享的精神,开源互助的理念,我的个人自学录制过程是全部按4K高清视频录制的,从手写笔记到验证手写笔记的上机操作过程全程录制,但因为4K高清文件太大均超过5G以上,所以无法上传至网络,如有需要可联系我QQ578652607对传,乐意分享。上传分享到百度网盘的只是压缩后的720P的视频。

我的学习过程录像百度盘地址分享如下:(清晰度:1280x720)

链接:https://pan.baidu.com/s/1_RcYEeZsiOkW7LZxk64XtA

提取码:2ty2

Bilibili:

https://www.bilibili.com/video/av40971985/

喜马拉雅语音笔记:

https://www.ximalaya.com/keji/19103006/154817929

孤荷凌寒自学python第七十七天开始写Python的第一个爬虫7的更多相关文章

  1. 孤荷凌寒自学python第七十九天开始写Python的第一个爬虫9并使用pydocx模块将结果写入word文档

    孤荷凌寒自学python第七十九天开始写Python的第一个爬虫9 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 到今天终于完成了对docx模块针对 ...

  2. 孤荷凌寒自学python第七十八天开始写Python的第一个爬虫8

    孤荷凌寒自学python第七十八天开始写Python的第一个爬虫8 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 到今天止基本完成了对docx模块针 ...

  3. 孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6

    孤荷凌寒自学python第七十六天开始写Python的第一个爬虫6 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 不过由于对python-docx模 ...

  4. 孤荷凌寒自学python第七十五天开始写Python的第一个爬虫5

    孤荷凌寒自学python第七十五天开始写Python的第一个爬虫5 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  5. 孤荷凌寒自学python第七十四天开始写Python的第一个爬虫4

    孤荷凌寒自学python第七十四天开始写Python的第一个爬虫4 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  6. 孤荷凌寒自学python第七十三天开始写Python的第一个爬虫3

    孤荷凌寒自学python第七十三天开始写Python的第一个爬虫3 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  7. 孤荷凌寒自学python第七十二天开始写Python的第一个爬虫2

    孤荷凌寒自学python第七十二天开始写Python的第一个爬虫2 (完整学习过程屏幕记录视频地址在文末) 今天在上一天的基础上继续完成对我的第一个代码程序的书写. 直接上代码.详细过程见文末屏幕录像 ...

  8. 孤荷凌寒自学python第七十一天开始写Python的第一个爬虫

    孤荷凌寒自学python第七十一天开始写Python的第一个爬虫 (完整学习过程屏幕记录视频地址在文末) 在了解了requests模块和BeautifulSoup模块后,今天开始真正写一个自己的爬虫代 ...

  9. 孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3

    孤荷凌寒自学python第七十天学习并实践beautifulsoup对象用法3 (完整学习过程屏幕记录视频地址在文末) 今天继续学习beautifulsoup对象的属性与方法等内容. 一.今天进一步了 ...

随机推荐

  1. CSU - 1224 ACM小组的古怪象棋

    传送门: http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1224 1224: ACM小组的古怪象棋 Lime Limit: 1 Sec     ...

  2. vue根据:data-属性值绑定控制class变化

    checked的初始值 小bug: v的checked有被修改,但没有被渲染到页面中. 试了子组件修改后的值传回父组件没用. 最后修改数据后调用this.$forceUpdate();即可重新渲染,样 ...

  3. 学习笔记(1)centos7 下安装nginx

    学习笔记(1)centos7 下安装nginx 这里我是通过来自nginx.org的nginx软件包进行安装的. 1.首先为centos设置添加nginx的yum存储库 1.通过vi命令创建一个rep ...

  4. 关于chrome浏览器不能更新js的问题

    今天写程序时,突然发现无论我怎么改本地js,用chrome打开时,均是改动之前的效果,F12查看Sources时发现js文件并没有被改动.由此引发的问题,经查询解决方法如下: F12后按F1,出现Se ...

  5. html 让table表格中的td单元格内容过长显示为固定长度,多余部分用省略号代替?

    <th class="wrap">商品名</th> .wrap{ width: 150px; //设置需要固定的宽度 white-space: nowrap ...

  6. 本地打jar包到本地的Maven出库

    1.命令行输入 mvn install:install-file -DgroupId=jar包的groupId -DartifactId=jar包的artifactId -Dversion=jar包的 ...

  7. 利用MyFlash闪回丢失数据(续)

          last night,i've tested flashback by MyFlash tool,but failed,now let's do some other test with ...

  8. angular 打包

    ERROR in ng:///F:/IDEWorkspace/dsmc/dsmc-front-new/trunk/src/app/routes/city-manage/component-coding ...

  9. sea.js模块化工具

    sea.js 一. sea.js向全局中引入了两个变量seajs.define: 1.seajs用加载文件 seajs.use(deps,callback)异步引入入口模块 路径要以sea.js文件所 ...

  10. 爬虫-爬虫介绍及Scrapy简介

    在编写案例之前首先理解几个问题,1:什么是爬虫2:为什么说python是门友好的爬虫语言?3:选用哪种框架编写爬虫程序 一:什么是爬虫? 爬虫 webSpider 也称之为网络蜘蛛,是使用一段编写好的 ...