這個雲數據庫RDS是送的,爲了瞭解一下這個RDS的用戶,也爲了在主機上做一個自動存數據的爬蟲,今天開始試用這個RDS。
還是一步一步摸着石頭過河。
登錄數據庫RDS
- 首先從控制檯登錄
- 進入實例 - mysql 8.0的,20g
- 內外網白名單設置
先把內網加白名單,按照旁邊的幫助我先加了0.0.0.0/0試試,這個默認是內網的主機
外網先點了申請外網地址,然後等一會兒就下來了。
內外網都有網址了。憑着這兩個網址,理論上,內外網都可以訪問。
- 創建賬號,並登錄查看
-
下了一個mysql客戶端試試,連上了,開始建表,我還是不太習慣在命令行中操作。
下的這個客戶端還可以。
-
現在本地python裏面連接試試,這需要先裝pymysql
pip install pymysql
- 爬蟲代碼開始編寫,這次主要嘗試把易車網的車型信息爬下來
url的規律是http://car.bitauto.com/tree_chexing/+type+"_"+id
不過type和id是品牌信息裏的,之前爬過一次。 - 導入模塊信息
import pymysql
import requests as rq
import re
import bs4
import json
-
數據庫連接,還是很簡單的
內網填內網地址,外網就填外網,在管控臺那裏有。
-
從數據庫中讀取剛填好的信息,篇幅有限,到此爲止
爬蟲主要用的是requests, BeautifulSoup還在不斷練習中。
#從數據庫中獲取brand信息存到數據字典裏
dict_car_brand={}
if bl_get_dict_car_brand is False:
try:
# 執行SQL語句
cursor = db.cursor()
sql="SELECT id,type,name,url FROM car_brand"
cursor.execute(sql)
# 獲取所有記錄列表
results = cursor.fetchall()
for row in results:
int_id = row[0]
str_type = row[1]
str_name = row[2]
str_url = row[3]
# 加入字典
dict_car_brand[str(int_id)]={"type":str_type,"name":str_name,"url":str_url}
bl_get_dict_car_brand=True
except:
print ("Error: unable to fetch data")
finally:
cursor.close()
#print(dict_car_brand)