最近在為自己搭建的**忙碌,記錄下爬蟲資料
除了基礎的利用python re,beautifulsoup爬取之外,可以連線mysql 資料庫將爬取資訊匯入資料庫,例子如下:
-*- coding: utf-8 -*-
import mysqldb as mdb
import sys
try:
con=mdb.connect('localhost','user','password','test',charset='utf8')
cur = con.cursor()
cur.execute("create table if not exists news\
(`id` int primary key not null auto_increment ,`publishdate` date not null ,`title` varchar(255) not null);")
except mdb.error, e:
print "error %d: %s" % (e.args[0],e.args[1])
sys.exit(1)
finally:
if con:
con.close()
在開啟mysql之後,使用test測試資料庫,利用mysqldb連線資料庫,建立news表with con:
curs = con.cursor()
for i in myitems:
date = i[0].replace("\n","")
title = i[1].replace("\n","")
# print date, title
curs.execute("insert into news(publishdate,title) value(%s, %s)",(date,title))
在爬蟲**內新增:如上**,with代表try-catch組對,獲取所爬取資訊,插入news表即可
其中出現了mysql亂碼問題,檢視之後利用show create table tablename語句發現預設表的字符集為latin,特查詢修改方法如下
修改資料庫字符集:
alter database db_bame default character set character_name;
把錶預設的字符集和所有字元列(char,varchar,text)改為新的字符集:
alter table tb_name convert to character set character_name
只是修改表的預設字符集:
alter table ta_name default character set character_name
修改欄位的字符集:
alter table tb_name change c_name c_name character set character_name
檢視資料庫編碼:
show create database db_name
檢視表編碼:
show create table tb_name
檢視字段編碼:
show full columns from tb_name
show
full
columns
from tbl_name;
永久更改字符集:開啟/etc/mysql/my.cnf,在[client]後新增default-character-set=utf8
此外 也可以利用json 轉換為sql匯入mysql,鏈結如下:
有時間學習下
參考資料:
爬蟲整理(部分)
使用時需要匯入 from urllib import parse urlencode 將字典引數轉化為url編碼後的字串 parse qs 將url編碼格式的引數轉化為字典型別 quote 將中文轉化為url編碼格式 unquote 將url編碼進行解碼 指的是 伺服器,功能是 網路使用者去取得網路...
爬蟲整理與複習
之前學過了一陣子的爬蟲,看的內容多且雜,彼時並未將內容融會貫通,且各處收集 較雜亂。自己也寫了一些,或是將網上的 加以修改,當時是在windows7的條件下均執行過至少一次可以達到預期效果。後轉入ubuntu系統,現再次將之前所學 系統得過一遍,達到複習效果的同時,使其亦可在linux上正常執行。做...
爬蟲學習資源整理
這個博主的這個爬蟲學習系列教程,很詳細啊,從入門到實戰 高階等都有詳細的文件介紹,對爬蟲感興趣的小夥伴推薦一看。這是乙個收集各種爬蟲 預設爬蟲語言為 python 的集合,其中還有蠻多爬蟲蠻有趣的,而且每個爬蟲都有詳細的開源 以及一些說明講解,如果想寫個爬蟲的話,倒是可以參照寫寫。這個入門教程主要是...