-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsearch.xml
More file actions
172 lines (82 loc) · 21.9 KB
/
search.xml
File metadata and controls
172 lines (82 loc) · 21.9 KB
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
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>video_test</title>
<link href="/2025/04/21/video/"/>
<url>/2025/04/21/video/</url>
<content type="html"><![CDATA[<h1 id="try"><a href="#try" class="headerlink" title="try"></a>try</h1><div align=center class="aspect-ratio"> <iframe src="https://player.bilibili.com/player.html?aid=113657048469239&bvid=BV12VBFYmEov&cid=27358660707&&page=1&as_wide=1&high_quality=1&danmaku=0" scrolling="no" border="0" frameborder="no" framespacing="0" high_quality=1 danmaku=1 allowfullscreen="true"> </iframe></div>]]></content>
<categories>
<category> 随想 </category>
</categories>
<tags>
<tag> test </tag>
</tags>
</entry>
<entry>
<title>test6</title>
<link href="/2025/04/21/test6/"/>
<url>/2025/04/21/test6/</url>
<content type="html"><![CDATA[<p>just test</p>]]></content>
<categories>
<category> 生活 </category>
</categories>
</entry>
<entry>
<title>test5</title>
<link href="/2025/04/21/test5/"/>
<url>/2025/04/21/test5/</url>
<content type="html"><![CDATA[<p>随便写写</p>]]></content>
<categories>
<category> 随想 </category>
</categories>
</entry>
<entry>
<title>test4</title>
<link href="/2025/04/21/test4/"/>
<url>/2025/04/21/test4/</url>
<content type="html"><![CDATA[<h2 id="文章引言"><a href="#文章引言" class="headerlink" title="文章引言"></a>文章引言</h2><p>这里可以写一些文章的引言内容,介绍文章的主要内容或者背景信息。</p><h3 id="正文内容"><a href="#正文内容" class="headerlink" title="正文内容"></a>正文内容</h3><p>这是文章的正文部分,你可以开始撰写具体的内容。</p><p><mjx-container class="MathJax" jax="SVG"><svg style="vertical-align: -0.798ex;" xmlns="http://www.w3.org/2000/svg" width="9.733ex" height="2.755ex" role="img" focusable="false" viewBox="0 -864.9 4301.8 1217.7"><g stroke="currentColor" fill="currentColor" stroke-width="0" transform="scale(1,-1)"><g data-mml-node="math"><g data-mml-node="munder"><g data-mml-node="mo"><path data-c="6C" d="M42 46H56Q95 46 103 60V68Q103 77 103 91T103 124T104 167T104 217T104 272T104 329Q104 366 104 407T104 482T104 542T103 586T103 603Q100 622 89 628T44 637H26V660Q26 683 28 683L38 684Q48 685 67 686T104 688Q121 689 141 690T171 693T182 694H185V379Q185 62 186 60Q190 52 198 49Q219 46 247 46H263V0H255L232 1Q209 2 183 2T145 3T107 3T57 1L34 0H26V46H42Z"></path><path data-c="69" d="M69 609Q69 637 87 653T131 669Q154 667 171 652T188 609Q188 579 171 564T129 549Q104 549 87 564T69 609ZM247 0Q232 3 143 3Q132 3 106 3T56 1L34 0H26V46H42Q70 46 91 49Q100 53 102 60T104 102V205V293Q104 345 102 359T88 378Q74 385 41 385H30V408Q30 431 32 431L42 432Q52 433 70 434T106 436Q123 437 142 438T171 441T182 442H185V62Q190 52 197 50T232 46H255V0H247Z" transform="translate(278,0)"></path><path data-c="6D" d="M41 46H55Q94 46 102 60V68Q102 77 102 91T102 122T103 161T103 203Q103 234 103 269T102 328V351Q99 370 88 376T43 385H25V408Q25 431 27 431L37 432Q47 433 65 434T102 436Q119 437 138 438T167 441T178 442H181V402Q181 364 182 364T187 369T199 384T218 402T247 421T285 437Q305 442 336 442Q351 442 364 440T387 434T406 426T421 417T432 406T441 395T448 384T452 374T455 366L457 361L460 365Q463 369 466 373T475 384T488 397T503 410T523 422T546 432T572 439T603 442Q729 442 740 329Q741 322 741 190V104Q741 66 743 59T754 49Q775 46 803 46H819V0H811L788 1Q764 2 737 2T699 3Q596 3 587 0H579V46H595Q656 46 656 62Q657 64 657 200Q656 335 655 343Q649 371 635 385T611 402T585 404Q540 404 506 370Q479 343 472 315T464 232V168V108Q464 78 465 68T468 55T477 49Q498 46 526 46H542V0H534L510 1Q487 2 460 2T422 3Q319 3 310 0H302V46H318Q379 46 379 62Q380 64 380 200Q379 335 378 343Q372 371 358 385T334 402T308 404Q263 404 229 370Q202 343 195 315T187 232V168V108Q187 78 188 68T191 55T200 49Q221 46 249 46H265V0H257L234 1Q210 2 183 2T145 3Q42 3 33 0H25V46H41Z" transform="translate(556,0)"></path></g><g data-mml-node="TeXAtom" transform="translate(1422,-150) scale(0.707)" data-mjx-texclass="ORD"><g data-mml-node="mi"><path data-c="1D465" d="M52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289Z"></path></g><g data-mml-node="mo" transform="translate(572,0)"><path data-c="2192" d="M56 237T56 250T70 270H835Q719 357 692 493Q692 494 692 496T691 499Q691 511 708 511H711Q720 511 723 510T729 506T732 497T735 481T743 456Q765 389 816 336T935 261Q944 258 944 250Q944 244 939 241T915 231T877 212Q836 186 806 152T761 85T740 35T732 4Q730 -6 727 -8T711 -11Q691 -11 691 0Q691 7 696 25Q728 151 835 230H70Q56 237 56 250Z"></path></g><g data-mml-node="mi" transform="translate(1572,0)"><path data-c="221E" d="M55 217Q55 305 111 373T254 442Q342 442 419 381Q457 350 493 303L507 284L514 294Q618 442 747 442Q833 442 888 374T944 214Q944 128 889 59T743 -11Q657 -11 580 50Q542 81 506 128L492 147L485 137Q381 -11 252 -11Q166 -11 111 57T55 217ZM907 217Q907 285 869 341T761 397Q740 397 720 392T682 378T648 359T619 335T594 310T574 285T559 263T548 246L543 238L574 198Q605 158 622 138T664 94T714 61T765 51Q827 51 867 100T907 217ZM92 214Q92 145 131 89T239 33Q357 33 456 193L425 233Q364 312 334 337Q285 380 233 380Q171 380 132 331T92 214Z"></path></g></g></g><g data-mml-node="mfrac" transform="translate(3457.3,0)"><g data-mml-node="mn" transform="translate(245.5,394) scale(0.707)"><path data-c="31" d="M213 578L200 573Q186 568 160 563T102 556H83V602H102Q149 604 189 617T245 641T273 663Q275 666 285 666Q294 666 302 660V361L303 61Q310 54 315 52T339 48T401 46H427V0H416Q395 3 257 3Q121 3 100 0H88V46H114Q136 46 152 46T177 47T193 50T201 52T207 57T213 61V578Z"></path></g><g data-mml-node="mi" transform="translate(220,-345) scale(0.707)"><path data-c="1D465" d="M52 289Q59 331 106 386T222 442Q257 442 286 424T329 379Q371 442 430 442Q467 442 494 420T522 361Q522 332 508 314T481 292T458 288Q439 288 427 299T415 328Q415 374 465 391Q454 404 425 404Q412 404 406 402Q368 386 350 336Q290 115 290 78Q290 50 306 38T341 26Q378 26 414 59T463 140Q466 150 469 151T485 153H489Q504 153 504 145Q504 144 502 134Q486 77 440 33T333 -11Q263 -11 227 52Q186 -10 133 -10H127Q78 -10 57 16T35 71Q35 103 54 123T99 143Q142 143 142 101Q142 81 130 66T107 46T94 41L91 40Q91 39 97 36T113 29T132 26Q168 26 194 71Q203 87 217 139T245 247T261 313Q266 340 266 352Q266 380 251 392T217 404Q177 404 142 372T93 290Q91 281 88 280T72 278H58Q52 284 52 289Z"></path></g><rect width="604.5" height="60" x="120" y="220"></rect></g></g></g></svg></mjx-container></p>]]></content>
<categories>
<category> 学习 </category>
</categories>
<tags>
<tag> test </tag>
</tags>
</entry>
<entry>
<title>test3</title>
<link href="/2025/04/21/test3/"/>
<url>/2025/04/21/test3/</url>
<content type="html"><![CDATA[<p>try</p><figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">import</span> os</span><br><span class="line"><span class="keyword">import</span> django</span><br><span class="line"><span class="keyword">import</span> datetime</span><br><span class="line"></span><br><span class="line"><span class="keyword">from</span> django.core.wsgi <span class="keyword">import</span> get_wsgi_application</span><br><span class="line"></span><br><span class="line">os.environ.setdefault(<span class="string">'DJANGO_SETTINGS_MODULE'</span>, <span class="string">'blog.settings'</span>)</span><br><span class="line">django.setup()</span><br><span class="line"></span><br><span class="line"><span class="keyword">from</span> post.models <span class="keyword">import</span> Post, Content</span><br><span class="line"></span><br><span class="line"><span class="comment"># ps = Post.objects.all()</span></span><br><span class="line"><span class="comment"># for x in ps:</span></span><br><span class="line"><span class="comment"># print(x)</span></span><br><span class="line"><span class="comment"># print(x.postdate)</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 增删改</span></span><br><span class="line"><span class="comment"># post对象若没指定id, save一定是新增</span></span><br><span class="line"><span class="comment"># 若post对象指定id, 一种数据库中没有对应的记录就是新增, 若有, 就是修改</span></span><br><span class="line"></span><br><span class="line"><span class="keyword">from</span> django.db.transaction <span class="keyword">import</span> atomic</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment"># post = Post()</span></span><br><span class="line"><span class="comment"># try:</span></span><br><span class="line"><span class="comment"># #post.id = 101 # insert into , 由于是新增且字段是自增, 所以可以不赋值</span></span><br><span class="line"><span class="comment"># post.title = 't107'</span></span><br><span class="line"><span class="comment"># post.postdate = datetime.datetime.now(</span></span><br><span class="line"><span class="comment"># datetime.timezone(datetime.timedelta(hours=8)) # 存入数据库时都是UTC时间, 取出时转换</span></span><br><span class="line"><span class="comment"># ) # aware</span></span><br><span class="line"><span class="comment"># post.author_id = 2</span></span><br><span class="line"><span class="comment">#</span></span><br><span class="line"><span class="comment"># c = Content()</span></span><br><span class="line"><span class="comment"># c.content = 'content107'</span></span><br><span class="line"><span class="comment"># with atomic(): # 原子性操作, 保证2张表同时成功或失败</span></span><br><span class="line"><span class="comment"># post.save() # 持久化, 成功提交, 失败回滚</span></span><br><span class="line"><span class="comment"># #print(post.pk) # 若成功持久化, 则pk不为空</span></span><br><span class="line"><span class="comment">#</span></span><br><span class="line"><span class="comment"># #c.post_id = post.id</span></span><br><span class="line"><span class="comment"># c.post = post</span></span><br><span class="line"><span class="comment">#</span></span><br><span class="line"><span class="comment"># c.save()</span></span><br><span class="line"><span class="comment"># print(post.pk)</span></span><br><span class="line"><span class="comment">#</span></span><br><span class="line"><span class="comment"># except Exception as e:</span></span><br><span class="line"><span class="comment"># print(e)</span></span><br><span class="line"><span class="comment"># print('=' * 30)</span></span><br><span class="line"><span class="comment"># print(post.pk)</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment"># 修改, 对存在的持久化了的数据进行修改: 先查后改; 先查再删除</span></span><br><span class="line"><span class="keyword">try</span>:</span><br><span class="line"> post = Post.objects.<span class="built_in">filter</span>(title=<span class="string">'t105'</span>).first() <span class="comment"># 从数据库中获取一个持久化的对象</span></span><br><span class="line"> <span class="keyword">if</span> post:</span><br><span class="line"> <span class="built_in">print</span>(post, post.pk, post.<span class="built_in">id</span>)</span><br><span class="line"></span><br><span class="line"> <span class="comment">#post.author_id = 1</span></span><br><span class="line"> <span class="comment">#post.save()</span></span><br><span class="line"></span><br><span class="line"> <span class="keyword">with</span> atomic(): <span class="comment"># 原子性操作, 保证2张表同时成功或失败</span></span><br><span class="line"> post.content.delete() <span class="comment">#※ 一对一关系中:先删除关联对象</span></span><br><span class="line"> <span class="comment"># 1/0</span></span><br><span class="line"> post.delete() <span class="comment">#※ 一对一关系中:再删除主对象</span></span><br><span class="line"></span><br><span class="line"><span class="keyword">except</span> Exception <span class="keyword">as</span> e:</span><br><span class="line"> <span class="built_in">print</span>(e)</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">'='</span> * <span class="number">30</span>)</span><br><span class="line"></span><br><span class="line"><span class="comment"># try:</span></span><br><span class="line"><span class="comment"># ret = Post.objects.filter(id__gt=100).update(author=1) # 批量更新, 危险, 慎用</span></span><br><span class="line"><span class="comment"># print(ret)</span></span><br><span class="line"><span class="comment"># except Exception as e:</span></span><br><span class="line"><span class="comment"># print(e)</span></span><br><span class="line"><span class="comment"># print('=' * 30)</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># try:</span></span><br><span class="line"><span class="comment"># ret = Post.objects.filter(id__gt=106).delete()</span></span><br><span class="line"><span class="comment"># print(ret) # Django拦截删除操作, 不推荐使用该方法</span></span><br><span class="line"><span class="comment"># except Exception as e:</span></span><br><span class="line"><span class="comment"># print(e)</span></span><br><span class="line"><span class="comment"># print('=' * 30)</span></span><br><span class="line"></span><br></pre></td></tr></table></figure>]]></content>
<categories>
<category> 编程 </category>
</categories>
<tags>
<tag> python </tag>
<tag> django </tag>
</tags>
</entry>
<entry>
<title>test2</title>
<link href="/2025/04/20/test2/"/>
<url>/2025/04/20/test2/</url>
<content type="html"><![CDATA[<h1 id="Test2"><a href="#Test2" class="headerlink" title="Test2"></a>Test2</h1><p>A simple clicker</p><figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">import</span> pyautogui</span><br><span class="line"><span class="keyword">import</span> time</span><br><span class="line"><span class="keyword">import</span> keyboard</span><br><span class="line"></span><br><span class="line"><span class="keyword">def</span> <span class="title function_">clicker</span>(<span class="params">click_interval</span>):</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">"Executing clicker, press 'ESC' to stop"</span>)</span><br><span class="line"> <span class="keyword">while</span> <span class="keyword">not</span> keyboard.is_pressed(<span class="string">'esc'</span>):</span><br><span class="line"> pyautogui.click()</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">"Clicked!"</span>)</span><br><span class="line"> time.sleep(click_interval)</span><br><span class="line"></span><br><span class="line"><span class="keyword">def</span> <span class="title function_">main</span>():</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">"please input click interval: (s)"</span>)</span><br><span class="line"> click_interval = <span class="built_in">float</span>(<span class="built_in">input</span>())</span><br><span class="line"></span><br><span class="line"> <span class="built_in">print</span>(<span class="string">"press 'F' to execute"</span>)</span><br><span class="line"> keyboard.wait(<span class="string">'f'</span>)</span><br><span class="line"></span><br><span class="line"> clicker(click_interval)</span><br><span class="line"></span><br><span class="line"><span class="keyword">if</span> __name__ == <span class="string">"__main__"</span>:</span><br><span class="line"> main()</span><br></pre></td></tr></table></figure>]]></content>
<categories>
<category> 编程 </category>
</categories>
<tags>
<tag> python </tag>
</tags>
</entry>
<entry>
<title>test</title>
<link href="/2025/04/20/test/"/>
<url>/2025/04/20/test/</url>
<content type="html"><![CDATA[<h1 id="just-a-test"><a href="#just-a-test" class="headerlink" title="just a test"></a>just a test</h1><p>hhh</p><h1 id="code-test"><a href="#code-test" class="headerlink" title="code test"></a>code test</h1><figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">from</span> urllib <span class="keyword">import</span> request, parse</span><br><span class="line"><span class="keyword">from</span> urllib.request <span class="keyword">import</span> urlopen, Request</span><br><span class="line"><span class="keyword">from</span> http.client <span class="keyword">import</span> HTTPResponse <span class="comment"># 很简陋</span></span><br><span class="line"><span class="keyword">import</span> random</span><br><span class="line"></span><br><span class="line"><span class="comment"># request 发起请求</span></span><br><span class="line"><span class="comment"># urlopen(url, data=None) # data: None -> GET, data: data -> POST</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 判断爬虫: 1. User-Agent; 2. 行为</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line">site = <span class="string">'http://www.bing.com/'</span></span><br><span class="line">site = <span class="string">'http://httpbin.org/get/'</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 1. 伪装</span></span><br><span class="line">ua_list = [</span><br><span class="line"> <span class="string">"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/57.0.2987.133 Safari/537.36"</span>,<span class="comment"># chrome</span></span><br><span class="line"> <span class="string">"Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN) AppleWebKit/537.36 (KHTML, like Gecko)Version/5.0.1 Safari/537.36"</span>, <span class="comment"># safafi</span></span><br><span class="line"> <span class="string">"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0"</span>, <span class="comment"># Firefox</span></span><br><span class="line"> <span class="string">"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)"</span> <span class="comment"># IE</span></span><br><span class="line">]</span><br><span class="line">ua = random.choice(ua_list)</span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment"># 构造request对象</span></span><br><span class="line">request = Request(site) <span class="comment"># , headers={}</span></span><br><span class="line">request.add_header(<span class="string">'user-Agent'</span>, ua) <span class="comment"># ※ Native, App, Web App 在http请求中会发送 User-Agent</span></span><br><span class="line"></span><br><span class="line">response:HTTPResponse = urlopen(request) <span class="comment"># request => response</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="keyword">with</span> response:</span><br><span class="line"> <span class="built_in">print</span>(<span class="built_in">type</span>(response), response)</span><br><span class="line"> <span class="built_in">print</span>(response.status, response.reason)</span><br><span class="line"> <span class="built_in">print</span>(response.headers) <span class="comment"># == x.info()</span></span><br><span class="line"> <span class="built_in">print</span>(response.geturl()) <span class="comment"># 发生 301 302</span></span><br><span class="line"> <span class="built_in">print</span>(response.read()) <span class="comment"># bytes</span></span><br><span class="line"> <span class="comment"># bytes => str ?</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 请求头 "User-Agent": "Python-urllib/3.12"</span></span><br><span class="line"></span><br><span class="line"><span class="built_in">print</span>(response.isclosed())</span><br><span class="line"><span class="built_in">print</span>(response.closed)</span><br><span class="line"></span><br></pre></td></tr></table></figure>]]></content>
<categories>
<category> 编程 </category>
</categories>
<tags>
<tag> python </tag>
</tags>
</entry>
</search>