2020-06
21

脱贫

By xrspook @ 19:40:02 归类于: 烂日记

连续两个星期呆在家里,我和我妈都在一起追一部叫做《最美的乡村》的电视剧。这是一部主旋律电视剧,非常接地气,其中的戏剧成分,我不知道有多少,但是,通过这部作品,我的确感觉到了一些很实在的东西。脱贫攻坚经常被提上日程,这也是2020年我国要实现的目标。这非常的不简单,无论是在一个小地方,还是一个国家,我估计全世界没有任何一个比较大的国家曾经做到过这种事。当然,那些人口特别少地方的国家可能例外。对一个有10多亿人民的国家来说,实现全民脱贫,那是一个非常了不起的事情。这部电视剧让我确切地了解到,这不是靠嘴皮子吹出来的,不少人为了这件事伤透了脑筋,也付出了非常多。那些看似不可能的任务,只要大家调动积极性,总会有办法解决。这部电视剧,我和我妈都看得欲罢不能。其它电视剧通常看几分钟我就会忍不住,没办法和我妈一起看下去了,因为剧情糟糕,因为演员的演技实在太烂,但是这部《最美的乡村》,我却没有这个感觉。因为我就像剧中人一样,为了实现那个愿望着急。

这部电视剧让我明白到,如果要让一个地区脱贫,光是给予他们物质的支持绝对是不行的。扶贫先扶智,这个思想非常重要,要做到的是,授人以渔,让他们学会本事,找到持续的经济来源,而且这还得是可持续发展的。要做到这个,光靠贫困村里面的干部群众很难做到,所以,这就必须依靠有能力有眼光的人下乡,帮他们完成这个任务。要做到这个,首先必须得确认去帮忙的这个人是全心全意的,而不是只是到某个地方镀一下金,然后走人。好几个情节,我都情不自禁哭了。正是因为有远见的人把他们的经验和眼光带到了那些贫困的地方,才让那些地方有了重生的机会。这部电视剧,仅仅是谈到了三个虚构的乡村里的故事,在中国的大地上,各个地方都有不少人奋战在这个事业上。因为党的号召,因为国家的召唤,因为只有让所有人都富起来,才会有繁荣昌盛,才会有国家稳定、人民幸福。

如何在一个穷的叮当响的地方看到希望、找出优势、发展特色产业,这不仅仅是靠带头人的力量。看到了希望,但如何执行,更多的是靠人。有可能是靠带头人的人脉关系、社会能力,还有很大一部分,需要调动贫困地区人民的积极性,尤其是要让那里的人看到希望,觉得有奔头,然后才会有大家劲往一处使。过去好几十年,大家都有同样的看法,呆在农村没前途,为了养家糊口,青壮劳动力都去城里打工了,老家只剩下老人孩子。但这部电视剧让我意识到,还没发展到农村,都是潜力股。无论哪个地方,要发展起来,都得靠人,都得靠智慧。保护好土地,吸引好人才才能谈发展。城市发展到一定程度,就很难再突破再上新台阶了,但广大的农村却有无限的潜力。我们要做到的,不是让城市不断地扩展,不断地吞并农村。一方水土养一方人,无论那是个穷的地方,还是个富的地方,大家肯定都会对自己的家乡充满感情。

理清了这些思路以后,人生的目标,以及该如何实现,也就非常明确了。我生在这个伟大的国家,恰逢活在这个不凡的时代,我们不应该仅仅是沾大伙的光,力所能及地把自己的事干好,就是对这个国家最大的贡献。

2020-06
20

想去献血,但不行

By xrspook @ 22:14:31 归类于: 烂日记

今年的6月有点烦,上个星期想去献血,但我知道自己大姨妈快来了,虽然身体没有什么明显的不适,但是体温偏高,接近37.3℃。我尚且觉得自己不妥,别人就更加会忌讳我这个存在。结果不出我所料,周一大姨妈就来了,所以难怪周末两天我的体温都处在一个低烧的状态。大姨妈来了以后,体温下降了,但是没有下降太多。理论上现在我的大姨妈已经接近尾声。当基础体温降低到一定程度以后,大姨妈就应该停止了,但是这周,我莫名觉得自己有点喉咙痛。不咳嗽、也没有低烧的感觉,但是就是觉得喉咙痛。生病吃药之类的时候是不能去献血的。离月底没剩下多少时间了,每天我都期待着早上醒来的时候身体感觉良好,不再有低烧、喉咙痛之类。但貌似很难,这到底是为什么呢?我之所以要纠结要在6月中下旬献血,是因为这段时间去会有额外的奖章。过去连续三年,我都拿到了。我明明知道这段时间去就可以拿到,但是我的身体却在这个时候罢工,我觉得非常无奈。

现在的全部都是无偿献血,不会有什么物质上的奖励,一年去一次,300多天里,我完全可以选一个自己健康的时间去做这件事,但是我的虚荣心却把一年300多天缩小成一年只有半个月的时间。正常情况下,这不成问题,但今年,对我来说这实在太难了。另外一个我想尽早去的原因是今年的新冠疫情真的说不准什么时候又会反复,到那个时候,大家又得都尽可能窝在家里,哪里都不能去。献血这个操作不是高风险,但是献血之后,人会进入一个短时间的免疫力低下的状态,这是个风险。如果要免除这个风险,或许我可以考虑,献成分血。这种事我从来没做过,当我的献血总量达到8000毫升之前,估计我是不会考虑成分血的。现在我的总量已经有5400毫升。胖子不是一天吃出来的,过去10多年的积累很不容易。

或许我根本不应该给自己任何的压力,本来主动去做这件事就已经非常好了,而我之所以要在这么十几天之内完成,完全是因为我的虚荣心在作怪。这个周末不能去,6月份我就只剩下端午节那三天假期了。我可以在这两天之内恢复,然后继续保持健康到下一个周末吗?正常情况下这种事是理所当然的,但现在,连我自己也有点说不准。最重要的是我不知道为什么自己会处在一个喉咙痛的状态。我什么东西都没做,生活也很正常。唯一跟平时有点不一样的大概是因为晚上睡觉的时候,我主动的控制了一下,环境温度和湿度。过去一周,在单位宿舍睡觉的时候,我都没有开空调,睡觉之前会开大概一小时的空调,然后关掉,睡觉的时候只开定时的除湿机。晚上在宿舍拖完地以后,我会一直把除湿机开着,房间的湿度会保持在50-70%。早上起来的时候,房间里的适度大概有70%。这跟平时是很不一样的,我一整晚都开空调的时候,早上起来房间的湿度会在80%以上,甚至接近90%,温度会处在我调节到27℃,但现在湿度下去了,温度却大概有28℃。难道就是因为湿度下降,温度稍微提升,导致我的身体跟平时不一样吗?如果真是这样的话,大概我应该听取我妈的建议,喝一点绿茶,稍微降一下火。之前我是个绝大多数情况下都不会上火的人。

一年到头,我就只有这个愿望了,满足我吧!

2020-06
19

好个屁

By xrspook @ 9:08:13 归类于: 烂日记

一直以来我都觉得,自己活在和平年代,战争这种东西,离我很远。那只是历史书上的事件,只是影视作品里面的情节,但现在,我莫名其妙地感觉到了一些水深火热。这种事不是天灾,都是人祸,是某些霸权大国策划出来的。昨天在我的blog上看到有人写了两条评论,一看过去,根本不需要细看,显然很不妥,于是,我马上把那定义为垃圾评论。的确,那就是垃圾评论。他们觉得正在说一些很公义的东西,但我觉得,那纯粹在乱吹。在某些人眼里,他说的是大实话,但是,我生活在这里,我过着怎样的生活,我自己知道,不需要别人告诉我。如果我离开了这个生我养我的地方,我不觉得在世界上的其它住所,我一定能活得更好,尤其是那些他们认为是天堂的地方。我生活在这里,这里就是我的家,没有人能把我从家里赶走,但是别处不一样,不一样的肤色,不一样的语言,不一样的思维方式,不一样的生活习惯,你就是一个异类。当什么事情都没有发生的时候,一切都还好,但是,当出现状况以后,你永远会被排挤。但是在家里,不会发生这种事。

在新冠疫情之前,我没有感知到外国有多么的排华。有些地方,甚至我从来没有听说过有这种事。新冠疫情就像一面照妖镜,就像一种催化剂。把大家的本性加速体现出来。当然,不是每个人都是不讲道理,又或者会去做一些毫无逻辑可言的东西。但是,当人处在应激环境,当人处在危难之中,又没有任何办法能扭转这种局面的时候,肯定会有人诉诸于暴力。

从前,我真没感觉到社会主义制度到底有多好。我的国家到底有多好。但近些年,我真的觉得,资本主义不好。大概是从乱港事件开始的。看到好端端的香港变成这样,实在让人很心痛。现在,因为某些事件,导致种族主义被推上了浪尖,然后,我们在某些发达的资本主义国家、那些被很多人想象为天堂的地方,也看到了跟香港非常类似的事件。香港的那些乱七八糟显然是被精心策划的,而现在,某些国家里面的那些事情呢?没人会相信那纯粹是自发的,而之所以要策划出这么道德沦亡的事情,是因为今年是美国的大选年。某些人为了上去,不择手段,就像印度的影视作品里面,经常反映为了拿到票数,某些政党,某些参选人会以各种方式贿赂或者逼迫选民投票。某些人总是说社会主义没有自由,但是,资本主义又真的有自由了吗?他们看到的东西,就一定是真相吗?当你手中的票可以说了算的时候,你真的会凭你的良心投票,而不会因为得到了眼前的某些小利益而做违心事吗?每到选举年,就会腥风血雨,选举之后,那些之前许下的各种承诺灰飞烟灭,迷迷糊糊的熬过一两年之后再次进入一心只为灭掉对手、即便要栽赃陷害的选举年。最终获益的是谁呢?那些觉得自己有自由选票的一般民众吗?上去的人从来都是财团,从来都是有权有地位,更重要的是有钱的人。阶级这种东西从来都是分明的。只要你的肤色不对,只要你的血统不对,你根本上不去,无论你用多少辈子。活在一个一出生就被定性了的国家,怎么他们就不觉得可悲!

人类少做一点孽,不行吗?

2020-06
18

BlogBus 2 WordPress – by xrspook

By xrspook @ 19:50:07 归类于: 扮IT

为什么要学习python?因为我见识过python有多牛逼,简单一个脚本文件,轻量级的东西实现强大的功能。因为要做XML文件的格式转换,所以我觉得我要学好python。Think Python 2看到第14章,我就转向去研究10年多以前网友写的BlogBus转WordPress的python脚本。之所以要研究,因为当时的WordPress格式和现在不一样,用以前的脚本转换出来的东西已经没办法直接导入到现在的WordPress里了。再去找写代码的那些人,有些网站还在,但有些已经消失了。我不能等待别人拯救我,我只能自己拯救自己。

我需要转换格式的是“回到过去——Betty迷的独白”和“Mi Internacional Cielo”,这两个旧BlogBus站点和我的主站“我的天”不一样,虽然里面有不少我原创的东西,但我从四面八方搜集回来的内容也不少。当时的BlogBus默认编辑界面是富文本,我看上去觉得格式没问题大概就可以了,但实际上格式是有问题的。从五湖四海搜集回来的文字里面怎么可能不夹杂各种格式,那些东西在富文本编辑下可能看不出来,但在源代码界面一团糟。如果当年我复制粘贴的时候有先去记事本过渡一下就不会有那么多的问题。所以除了要转换BlogBus和WordPress的标签以外我还要筛选删除那些坏事的源代码。

经过接近一周的努力,我终于整出来了。运行下面的python3脚本,如果能顺利完成,自动生成出新的XML文件,用官方途径导入WordPress 5.4.2是完全没有问题的,但我只测试了我自己的两个blog,是不是兼容其它我不知道。因为转换blog我是有自己的想法的,所以脚本中有一些个性化的东西,比如我把blog的标题变成了分类,把原来的分类变成了标签。脚本中有大量的反转义替换,主要是为了人去看CDATA的时候不太头晕迷糊,因为我那两个旧blog里有大量的西班牙语字符,不同的编码下,BlogBus的导出文件里有些被转义了有些没有。那些转义了的放到WordPress里不知道WordPress会不会转回来,我试过标题被BlogBus转义之后WordPress不会转回来,看得我云里雾里。因为转义很头痛,所以除了少数几个内容,有可能被转义的文字都被我用CDATA包裹了起来。

脚本不是我一个人的功劳,我只是在当年网友脚本的基础上做了调整,使之适配python3和WordPress 5.4.2。

我的脚本:xbus2wp.py (PS:下面脚本330行的《/p》是什么鬼怪!WordPress的脚本插件在搞什么!)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
'''
***使用说明***
终端界面输入xbus2wp.py bus.xml xrspook。其中:
xbus2wp.py为脚本名字,bus.xml为BlogBus导出文件,xrspook为博主名字,3个参数以空格分开
若运行无误,输出的文件名为[原文件名_xbus2wp.xml]
脚本基于python3,适配WordPress 5.4.2(2020-06-18)
'''
 
import re, sys, getopt, datetime
from xml.dom import minidom
from time import time
 
def convert(inputFileName, owner, order='asc'):
    """"""
    try:
        xmldoc = minidom.parse(inputFileName)
    except Exception as e:
        print ('Fail.')
        print (e)
        print ('Please repair or delete invalid token like "& < >" there.')
        sys.exit(1)
 
    bus = xmldoc.documentElement
    logs = bus.getElementsByTagName('Log')
 
    dom = minidom.Document()
    rss = dom.createElement('rss') # rss是root,根元素
    dom.appendChild(rss)      
    rss.setAttribute('version', '2.0')
    rss.setAttribute('xmlns:content', 'http://purl.org/rss/1.0/modules/content/')
    rss.setAttribute('xmlns:wfw', 'http://wellformedweb.org/CommentAPI/')
    rss.setAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/')
    rss.setAttribute('xmlns:wp', 'http://wordpress.org/export/1.0/')
    channel = dom.createElement('channel')
    rss.appendChild(channel)
    wxr_version = dom.createElement('wp:wxr_version') # 加入wxr戳,无戳无法进行WordPress导入
    channel.appendChild(wxr_version)
    wxr_version_node = dom.createTextNode('1.1')
    wxr_version.appendChild(wxr_version_node)
 
    busname = bus.getElementsByTagName('BlogName')[0] # 提取原BlogBus名字
    busname_text = getElementData(busname).replace(' ', '_')
 
    # create a list to contain items instead of appending them to
    # channel directly in order to sort them of lately according to order.
    if order == 'desc':
        item_list = []
    else:
        item_list = None
 
    for log in logs:
        title = log.getElementsByTagName('Title')[0]
        title_text = getElementData(title)
        content = log.getElementsByTagName('Content')[0]
        content_text = getElementData(content)
        logdate = log.getElementsByTagName('LogDate')[0]
        pubdate = getElementData(logdate)
        writer = log.getElementsByTagName('Writer')[0]
        creator = owner # BlogBus的writer根本没包含元素!
        category = getElementData(log.getElementsByTagName('Sort')[0])
        tagi = log.getElementsByTagName('Tags')[0]
        tags = getElementData(tagi).split(' ')
        new_tags = unique_tag(category, tags) # 新的wp标签里包含了原BlogBus里的分类与标签
        comments = log.getElementsByTagName('Comment')
 
        #-----
        item = dom.createElement('item')
 
        # handle title
        title_element = createElement(dom, 'title', title_text, 'cdata')
        item.appendChild(title_element)
 
        # handle type
        type_element = createElement(dom, 'wp:post_type', 'post', 'cdata')
        item.appendChild(type_element)
 
        # handle pubdate
        pubdate_element = createElement(dom, 'pubDate', convertPubDate(pubdate))
        item.appendChild(pubdate_element)
 
        # handle creator
        creator_element = createElement(dom, 'dc:creator', creator, 'cdata')
        item.appendChild(creator_element)
 
        # handle categories with domain
        category_element = createElement(dom, 'category', busname_text, 'cdata') # 把BlogBus标题设置为分类,因为我要合并多个旧blog
        category_element.setAttribute('domain','category')
        category_element.setAttribute('nicename', busname_text)
        item.appendChild(category_element)
 
        # handle tags
        for tag in new_tags:
            tag = tag.replace('&ntilde;', 'n')
            tag = tag.replace('summary_of_BLF', 'summary_of_BLF(from_rincondebetty)')
            tag = tag.replace('summary_of_EcoModa', 'summary_of_EcoModa(from_rincondebetty)')
            category_element = createElement(dom, 'category', tag, 'cdata')
            category_element.setAttribute('domain','post_tag')
            category_element.setAttribute('nicename', tag)
            item.appendChild(category_element)
 
        # handle content
        content_element = createElement(dom, "content:encoded", content_text, 'cdata')        
        item.appendChild(content_element)
 
        # handle post_date
        post_date_element = createElement(dom, "wp:post_date", pubdate)
        item.appendChild(post_date_element)
 
        # handle status
        status_element = createElement(dom, "wp:status", 'publish')
        item.appendChild(status_element)
 
        # handle comments
        if comments:
            commentElements = createComments(dom, comments)
            for commentElement in commentElements:
                item.appendChild(commentElement)
 
        if item_list != None:
            item_list.append(item)
        else:
            channel.appendChild(item)
 
    if item_list:
        item_list.reverse()
        for m in item_list:
            channel.appendChild(m)
 
    global filename # 输出设置
    output = filename + '_xbus2wp.xml'
    f = open(output ,'wb+')
    import codecs
    writer = codecs.lookup('utf-8')[3](f)
    dom.writexml(writer, '', ' ' * 4, '\n', encoding='utf-8')
    writer.close()
 
def unique_tag(category,tags): # 只保留唯一的标签
    category = category.replace(' ', '_')
    l = category.split() + tags
    new_l = []
    for item in l:
        if item not in new_l and item != '(from_rincondebetty)':
            new_l.append(item.replace(' ', '_')) # 替换空格为下划线
    return new_l
 
def getElementData(element): # 获取节点数据
    """"""
    data = ''
    for node in element.childNodes:
        if node.nodeType in (node.TEXT_NODE, node.CDATA_SECTION_NODE):
            data += node.data
    return data
 
def createComments(dom, comments):
    """"""
    l = []
    count = 0
    for comment in comments:
        count += 1 # 每篇文章的评论序号,没有序号,评论只能导入每篇最后一条
        email = comment.getElementsByTagName('Email')[0]
        homepage = comment.getElementsByTagName('HomePage')[0]
        name = comment.getElementsByTagName('NiceName')[0]
        content = comment.getElementsByTagName('CommentText')[0]
        date = comment.getElementsByTagName('CreateTime')[0]
        comment_element = createCommentElement(count, dom, email, homepage, name, content, date)
        l.append(comment_element)
    return l
 
def createCommentElement(count, dom, email, homepage, name, content, date):
    """"""
    comment_author = getElementData(name)
    comment_author_email = getElementData(email)
    comment_author_url = getElementData(homepage)
    comment_date = getElementData(date)
    comment_content = getElementData(content)
 
    comment_id_element = createElement(dom, 'wp:comment_id', str(count))
    comment_author_element = createElement(dom, 'wp:comment_author', comment_author)
    comment_author_email_element = createElement(dom, 'wp:comment_author_email', comment_author_email)
    comment_author_url_element = createElement(dom, 'wp:comment_author_url', comment_author_url)
    comment_date_element = createElement(dom, 'wp:comment_date', comment_date)
    comment_date_gmt_element = createElement(dom, 'wp:comment_date_gmt', comment_date)
    comment_content_element = createElement(dom, 'wp:comment_content', comment_content, 'cdata')
    comment_approved_element = createElement(dom, 'wp:comment_approved', '1')
 
    # make the comment element
    comment_element = dom.createElement('wp:comment')
    comment_element.appendChild(comment_id_element)
    comment_element.appendChild(comment_author_element)
 
    # validate email and url
    validEmail = validateEmail(comment_author_email)
    if (validEmail):
        comment_element.appendChild(comment_author_email_element)
 
    validUrl = validateUrl(comment_author_url)
    if (validUrl):
        comment_element.appendChild(comment_author_url_element)    
 
    comment_element.appendChild(comment_date_element)
    comment_element.appendChild(comment_date_gmt_element)
    comment_element.appendChild(comment_content_element)
    comment_element.appendChild(comment_approved_element)
 
    return comment_element
 
def createElement(dom, elementName, elementValue, type='text'): #建立节点标签和节点
    """"""
    global owner
    tag = dom.createElement(elementName)
    if elementValue.find(']]>') > -1:
        type = 'text'
    if type == 'text':
        text = dom.createTextNode(elementValue)
    elif type == 'cdata':
        elementValue = elementValue.replace('&amp;', '&')
        elementValue = elementValue.replace('&lt;', '<')
        elementValue = elementValue.replace('&gt;', '>')
        elementValue = elementValue.replace('&apos;', '\'')
        elementValue = elementValue.replace('&quot;', '"')
 
        # 大量替换与我的旧blog有各种编码的西班牙语字符有关
        elementValue = elementValue.replace('&copy;', '') # 版权标志
        elementValue = elementValue.replace('&nbsp;', '') # 空格
        elementValue = elementValue.replace('&ldquo;', '“') # 左双引号
        elementValue = elementValue.replace('&rdquo;', '”') # 右双引号
        elementValue = elementValue.replace('&lsquo;', '‘') # 左单引号
        elementValue = elementValue.replace('&rsquo;', '’') # 右单引号
        elementValue = elementValue.replace('&acute;', '´') # 单引号
        elementValue = elementValue.replace('&hellip;', '...') # 省略号
        elementValue = elementValue.replace('&mdash;', '—') # 破折号
        elementValue = elementValue.replace('&middot;', '·') # 分隔号
        elementValue = elementValue.replace('&deg;', '°') # 单位度
        elementValue = elementValue.replace('&iexcl;', '¡') # 西班牙语反叹号
        elementValue = elementValue.replace('&iquest;', '¿') # 西班牙语反问号
        elementValue = elementValue.replace('&ntilde;', 'ñ') # 西班牙语n
        elementValue = elementValue.replace('&Ntilde;', 'Ñ') # 西班牙语N
        elementValue = elementValue.replace('&aacute;', 'á') # 西班牙语a
        elementValue = elementValue.replace('&eacute;', 'é') # 西班牙语e
        elementValue = elementValue.replace('&iacute;', 'í') # 西班牙语i
        elementValue = elementValue.replace('&oacute;', 'ó') # 西班牙语o
        elementValue = elementValue.replace('&uacute;', 'ú') # 西班牙语u
        elementValue = elementValue.replace('&Aacute;', 'Á') # 西班牙语A
        elementValue = elementValue.replace('&Eacute;', 'É') # 西班牙语E
        elementValue = elementValue.replace('&Iacute;', 'Í') # 西班牙语I
        elementValue = elementValue.replace('&Oacute;', 'Ó') # 西班牙语O
        elementValue = elementValue.replace('&Uacute;', 'Ú') # 西班牙语U
        elementValue = elementValue.replace('&Atilde;', 'Ã') # 西班牙语A~
        elementValue = elementValue.replace('&ordf;', 'ª') # 西班牙语上标a
        elementValue = elementValue.replace('&ordm;', 'º') # 西班牙语上标o
 
        elementValue = elementValue.replace('<!--msnavigation-->', '')
        elementValue = elementValue.replace('博主', owner)
        elementValue = elementValue.replace('<i>', '')
        elementValue = elementValue.replace('</i>', '')
        elementValue = elementValue.replace('<br /><br />', '<br />')
 
        elementValue = re.sub(r"(?:<\?xml.*?>)", "", elementValue)
        elementValue = re.sub(r"(?:<[TDSFHI].*?>)", "", elementValue)
        elementValue = re.sub(r"(?:<\/[TDSFHI].*?>)", "", elementValue)
        elementValue = re.sub(r"(?:<P.*?>)", "<p>", elementValue)
        elementValue = re.sub(r"(?:<(table|tbody|tr|td|div|span|img|script|font|hr|object|param).*?>)", "", elementValue)
        elementValue = re.sub(r"(?:<\/(table|tbody|tr|td|div|span|img|script|font|object).*?>)", "", elementValue)
        elementValue = re.sub(r"\n", "", elementValue) # 把替换造成的空行删除
 
        text = dom.createCDATASection(elementValue)
    tag.appendChild(text)
    return tag
 
def convertPubDate(date, timediff='+0000'):
    """
    convert 2003-08-22 16:01:56
    to Thu, 23 Aug 2007 05:47:54 +0000
    """
    year, mon, day = int(date[:4]), int(date[5:7]), int(date[8:10])
    time = date[11:]
    aday = datetime.datetime(year, mon, day)
    d = {'1':'Mon', '2':'Tus', '3':'Wen', '4':'Thur', '5':'Fri', '6':'Sat', '7':'Sun'}
    m = {'1':'Jan', '2':'Feb', '3':'Mar', '4':'Apr', '5':'May', '6':'Jun',
         '7':'Jul', '8':'Aug', '9':'Sep', '10':'Oct', '11':'Nov', '12':'Dec'}
    weekday = d[str(aday.isoweekday())]
    month = m[str(mon)]
    pubdate = "%s, %d %s %s %s %s" % (weekday, day, month, year, time, timediff)
    return pubdate
 
def validateEmail(email):
    '''
    '''
    pattern = r'^[0-9a-z][_.0-9a-z-]{0,31}@([0-9a-z][0-9a-z-]{0,30}[0-9a-z]\.){1,4}[a-z]{2,4}$'
    p = re.compile(pattern)
    m = p.match(email)
    if m:
        return True
    else:
        return False
 
def validateUrl(url):
    '''
    '''
    pattern = r'^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$'
    p = re.compile(pattern)
    m = p.match(url)
    if m:
        return True
    else:
        return False
 
def main(argv=None):    
    global filename
    global owner
 
    if argv is None:
        argv = sys.argv
    # parse command line options
 
    args = sys.argv[1:]
    order='asc'
    if (len(args) == 2):
        print ('Converting...'),
        sys.stdout.flush()
        start = time()
        filename = args[0].replace('.xml', '')
        owner = args[1] # BlogBus没把博主名字输出,只能手动
        convert(args[0], args[1], order)
        end = time()
        print ('Done. Elapse %g seconds.' % (end - start))
 
if __name__ == "__main__":
    sys.exit(main())
</p>
2020-06
18

拉黑

By xrspook @ 9:17:02 归类于: 烂日记

什么人会被我拉黑呢?那通常是我的同事。什么同事会被我拉黑呢?通常是那种不在上班时间找我,而下班时间一个电话过来让你干嘛干嘛的人。完全不会考虑当时你真在做什么,反正他们觉得24小时你都应该回答他们的问题,为他们工作,随时让你加班,那是再正常不过的事。我非常讨厌这种人,无论那是我的领导,还是我的同事,又或者是下属。当然最后这个选项是不存在的,因为我很讨厌之前两种人这么干,所以到现在为止,我也不会对我下面的人有这样的要求。即便我在工作时间以外找下属,都不是因为工作。上班的时候不找你,下班的时候才跟你说很急很忙,这到底是什么意思呢!这意味着他们永远把与你相关的工作的优先级设定为最低,所以在上班的时候、精力旺盛的时候根本不觉得你有存在感。当他们迷迷糊糊,又或者被某些人逼迫着要交某些东西的时候,就突然想起原来还有一个之前被他们丢一边的问题没有解决。曾经我试过莫名其妙没有任何先兆,下班了以后一个电话就叫你回去加班。有些时候我能预知到这种结果,我也知道我是唯一的选项,所以我试过直接不理睬他们的电话,人也不让他们找到。他们明明可以在下班之前就告知我,下班之后有加班这种事,但他们却没有这么干。

我很讨厌加班,虽然我经常莫名其妙加很多班,但是这种加班我从来没有要过单位一分钱加班费,因为那是我心血来潮,想要做某些东西。当我的兴趣上去了以后,根本停不下来,当我正在潜心做某件事的时候,根本没有上班与下班之分。我是这样的人,但我不能逼迫我的同事和我的下属也跟我一样。所以即便加了很多的斑,但是那种加班都只对我一个人有影响,这些加班完全不需要其他人加入其中。所以一整个晚上或者一整个周末的时间没了都只是我一个人的事。领导知不知道无所谓,同事知不知道也无所谓,我也没想过他们给我加班费。之所以那样干是因为我喜欢。但是,别人硬逼要我加班的那种,我很讨厌。因为我极度讨厌那种事,当某些人一次又一次强迫我做那种事的时候,我就会把他拉黑,无论他是谁。

当我去找别人帮忙的时候,我会很在意找别人的时机。除非那是我非常熟的人。最熟悉的朋友,任何时点去找他们都不是问题。因为或许他们不会马上恢复你,但是他们仍然会把那件事记在心里,他们总会帮你做的,如果他们力所能及,这就是信任。但是那些纯粹只是普通得不能再普通的同事关系的人,你怎么好意思完全不考虑时间去骚扰别人呢!到现在为止,我仍只是个小不点,我不是领导,所以我不是那种,7天24小时随时接受任务的人。当他们逼迫我得这么干的时候,我会直接不鸟。在这方面,我是个非常我行我素的人。毕竟过去10年有余的工作经历告诉我,即便我在下班的时间帮了那些人,他们也不会给我什么好处。反过来,下班之后我完全不理睬他们,他们也没办法拿我怎样。

将心比心是必须的。如果你自己是没有被虐底线的,起码在虐别人的时候,得考虑一下,对方是不是也跟你一样。

© 2004 - 2026 我的天 | Theme by xrspook | Power by WordPress