緣由
近期在折騰一個小東西須要抓取網上的頁面。然後進行解析。將結果放到資料庫中。
了解到Python在這方面有優勢,便選用之。
由於我有台server上面安裝有mysql,自然使用之。在進行資料庫的這個作業過程中遇到了不少問題,這裡記錄一下,大家共勉。
python中mysql的呼叫
百度之後能夠透過MySQLdb進行資料庫操作。查看文件,了解到python中提供了一個mysql時直接實作了mysql的c語言API。 MySQLdb是對其在更高一層的封裝,因此,使用起來更加方便。我們能夠使用mysql,但更好的方法是使用MySQLdb
安裝中遇到的問題
在這個頁面http://sourceforge.net/projects/mysql-python/mysql-python/能夠下載到最新版本號的MySQLdb,解壓縮後運行安裝時,可能會有一些問題。
透過python setup.py build 運行安裝會提示No module named setuptools
解決方法,安裝之
〜sudo config not found
此時我們須要安裝mysqld-dev
sudo apt-get install libmysqld-dev
可能再次運行還會出現錯誤。類似這樣`
building 'mysql' extension gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Dversion_info=(1,2,3,'ftrict -final' ) -Dversion=1.2.3 -I/usr/include/mysql -I/usr/include/python2.7 -c mysql.c -o build/temp.linux-i686-2.7/mysql.o -DBIG_JOINS=1 - fno-strict-aliasing -DUNIV_LINUX -DUNIV_LINUX In file included from mysql.c:29:0: pymemcompat.h:10:20: fatal error: Python.h: No such file or directory
〜〜〜〜〜〜〜㟎get install python-dev
這步驟是安裝python的一些開發用的頭檔。
基本上前面三種之後,不會再出現其它問題了。
可是假設mysql是自己安裝的。而且lib檔沒有放到/usr/local/lib以下則還會報錯。
解決的方法將文件軟連接到這個資料夾下,或是改動系統的/etc/ld.so.cnf文件,把我們lib所在的資料夾放進去。兩種方法都能夠。然後在ldconfig,讓其生效就可以。
比方我們用第一種方法ln -s /usr/local/mysql/lib/mysql/libmysqlclient* /usr/lib
實際使用
conn= MySQLdb.connect(host=“localhost”,user=“root”,passwd=“sa”,db=“mytable”,charset=“utf8”) 提供的connect方法用來和資料庫建立連線,接收數個參數,傳回連接物件. 運行語句和取結果 cursor=conn.cursor() n=cursor.execute(sql,param) ,先我們用使用物件我們會使用cursor提供的方法來進行工作.這些方法包含兩大類:1.運行命令,2.接收回傳值 後面再具體說。這裡不詳說 結束。關閉資料庫連線 須要分別的關閉指針對象和連接物件.他們有名字同樣的方法 cursor.close() conn.close()『〜『的方法commit() 提交 rollback() 回滾 cursor用來運行命令的方法: callproc(self, procname, args):用來運行存儲過程列表,傳回值為受影響的行數 execute(self, query, args):運行單條sql語句,接收的參數為sql語句本身和使用的參數列表,傳回值為受影響的行數executemany(self, query, args):運行單挑sql語句,可是反覆運行參數列表裡的參數,傳回值為受影響的行數nextset(self):移動到下一個結果集 cursor來接收回傳值的方法: fetchall(self):接收所有的返回結果行. fetchmany(self, size=None):接收size條返回結果行.假設size的值大於返回的結果行的數量大於返回的結果行的數量,則會傳回cursor.arraysize條資料. fetchone(self):傳回一條結果行. scroll(self, value, mode='relative'):移動指標到某一行.mode='relative'則表示從目前所在行移動value條,假設mode='absolute',則表示從結果集的第一行移動value條. 最後插一句 電腦升級到ubuntu14.04又一次裝的,之前的部落格倉庫沒了,又一次從github上面拉回來。中間出了點差錯。我刪除文件,這篇文章差點沒了。只是還好如今能看到這篇文章。

2小時內可以學會Python的基本編程概念和技能。 1.學習變量和數據類型,2.掌握控制流(條件語句和循環),3.理解函數的定義和使用,4.通過簡單示例和代碼片段快速上手Python編程。

Python在web開發、數據科學、機器學習、自動化和腳本編寫等領域有廣泛應用。 1)在web開發中,Django和Flask框架簡化了開發過程。 2)數據科學和機器學習領域,NumPy、Pandas、Scikit-learn和TensorFlow庫提供了強大支持。 3)自動化和腳本編寫方面,Python適用於自動化測試和系統管理等任務。

兩小時內可以學到Python的基礎知識。 1.學習變量和數據類型,2.掌握控制結構如if語句和循環,3.了解函數的定義和使用。這些將幫助你開始編寫簡單的Python程序。

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

Python3.6環境下加載Pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

如何解決jieba分詞在景區評論分析中的問題?當我們在進行景區評論分析時,往往會使用jieba分詞工具來處理文�...

如何使用正則表達式匹配到第一個閉合標籤就停止?在處理HTML或其他標記語言時,常常需要使用正則表達式來�...


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver Mac版
視覺化網頁開發工具

記事本++7.3.1
好用且免費的程式碼編輯器