---
# System prepended metadata

title: 第六堂社課
tags: ['1091']

---

# 第六堂社課
###### tags: `1091`
::: success
B063040013 李洳瑄 
B063040046 徐彥庭
B095040008 王新依
B073040062 南政佑
B083040014 陳昱維
B063012015 賴亭諭
B093040002 陳佳揚
B093012033 王  勤
B093040016 高聖傑
B093040044 蔡明軒
M094020021 王子菁
M093140005 黃婷筠
M093140016 謝昌勝
B093012009 黃柏翰
M094020008 周郁津
M094020006 劉晉瑋
M093010066 謝佳翰
B083011026 蘇彥龍
B093140010 王品媛
B062030001 江逸軒
M094020044 紀韋辰
M083140001 張郢展
B073040047 楊志璿
:::

主題 : 爬蟲
講者 : 楊志璿
slide: [link](https://drive.google.com/file/d/11kmAMG0cX3G1lPp-sFA-6N1D5aQg3Jgc/view?usp=sharing)

### GET
* 使用者向伺服器請求資源
* 最常見的 HTTP Method
* 瀏覽器網址 輸入網址 按下 ENTER 就是送出 GET 請求

### POST
* 使用者送訊息給伺服器
* 表單的送出、傳送的帳密，都是 POST

### HTTP Status
* 200 : 請求成功，會回傳資料
* 3XX : 重新導向
* 404 : 請求失敗
* 5XX : 伺服器端錯誤

### Python 基礎教學
1. 
```python
if condition:
    #some code
elif condition:
    #some code
else:
    #some code
```
2. for loop
    while loop
    recursion
3. 
```python
l = [a,b,c] #list
s = {1,2,3} #set
d = {'a':'apple','b':'ball'} #dictionary
```
4. 爬蟲範例
import requests -> ex: requests.__doc__
```python  
import requests
from bs4 import BeautifulSoup
import re # regex

r = requests.get('https://activity-osa.nsysu.edu.tw')
print(r.text) #印出剛剛拿到的東西(比較醜)
page = BeautifulSoup(r.text, 'html.parser') #印出相對美的東西
page.find_all('a', {'title':re.compile(r'公告')}) #找出以 a 為開頭的標籤，他的 title 裡符合 regex「公告」
```


5. regex (Regular Expression)
- [Wikipedia](https://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F)
- [推薦一個寫扣前可以測試的小網站](https://regex101.com)

6. mongodb
- a database
```python=
import pymongo

myclient = pymongo.MongoClient('mongodb://localhost:27017/')
```

### Cookie
* 為何把網頁關掉後，再打開它還是出現一樣的東西，而不用再輸入資料?
* 網站為了辨識使用者，或者延續上一個或之前的工作狀態，所以會產生一個機制來儲存各個使用者的狀態。因為 cookie 為 User 端的憑證，伺服器可以知道你是誰，而直接放你過，而 cookie 就放在你電腦裡
* 原理是再次打開網頁時 Header 會傳送 cookie 給伺服器，然後就認得你
* 儲存在 Sever 的叫做 Session
* [維基 - Cookie](https://zh.wikipedia.org/zh-tw/Cookie)
* [Session 與 Cookie 差別](https://medium.com/tsungs-blog/day14-session%E8%88%87cookie%E5%B7%AE%E5%88%A5-eb7b4035a382)

---
頁尾交流區

這是哪個地方的台語腔?? By呆彎郎
挖喜呆灣娘0.<
>> [name=楊志璿] 主要是台南混合腔，抑毋過有一寡嘉義東石e海口腔


<!--哭啊 沒台灣國旗-->
<!--有阿 語法打錯-->
<!--為甚麼cn不用打flag...-->
<!--韓國也可以不用打falg-->

zxc25077667@gmail.com //歡迎騷擾

#### for those who use windows:
1. download python from [here](https://www.python.org/downloads/)
2. 
![](https://i.imgur.com/USvuiTL.png)
3. 
 ![](https://i.imgur.com/kRUVEDO.png)
4.  
 ![](https://i.imgur.com/Vi0Ursa.png)
5. install
6. 用管理員權限打開 cmd
7. pip3 install requests
8. 打開 python
9. 開始爬蟲 :bug: !
