Ⅰ 求助用python從資料庫取數據動態生成表格的方法

一、可使用的第三方庫
python中處理excel表格,常用的庫有xlrd(讀excel)表、xlwt(寫excel)表、openpyxl(可讀寫表)等。xlrd讀數據較大的excel表時效率高於openpyxl,所以我在寫腳本時就採用了xlrd和xlwt這兩個庫。介紹及下載地址為:http://www.python-excel.org/ 這些庫文件都沒有提供修改現有excel表格內容的功能。一般只能將原excel中的內容讀出、做完處理後,再寫入一個新的excel文件。
二、常見問題
使用python處理excel表格時,發現兩個個比較難纏的問題:unicode編碼和excel中記錄的時間。
因為python的默認字元編碼都為unicode,所以列印從excel中讀出的中文或讀取中文名的excel表或sheet時,程序提示錯誤UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)。這是由於在windows中,中文使用了gb2312編碼方式,python將其當作unicode和ascii來解碼都不正確才報出的錯誤。使用VAR.encode('gb2312')即可解決列印中文的問題。(很奇怪,有的時候雖然能列印出結果,但顯示的不是中文,而是一堆編碼。)若要從中文文件名的excel表中讀取數據,可在文件名前加『u』表示將該中文文件名採用unicode編碼。
有excel中,時間和日期都使用浮點數表示。可看到,當『2013年3月20日』所在單元格使用『常規』格式表示後,內容變為『41353』;當其單元格格式改變為日期後,內容又變為了『2013年3月20日』。而使用xlrd讀出excel中的日期和時間後,得到是的一個浮點數。所以當向excel中寫入的日期和時間為一個浮點數也不要緊,只需將表格的表示方式改為日期和時間,即可得到正常的表示方式。excel中,用浮點數1表示1899年12月31日。
三、常用函數
以下主要介紹xlrd、xlwt、datetime中與日期相關的函數。

import xlrd
import xlwt
from datetime

def testXlrd(filename):
book=xlrd.open_workbook(filename)
sh=book.sheet_by_index(0)
print "Worksheet name(s): ",book.sheet_names()[0]
print 'book.nsheets',book.nsheets
print 'sh.name:',sh.name,'sh.nrows:',sh.nrows,'sh.ncols:',sh.ncols
print 'A1:',sh.cell_value(rowx=0,colx=1)
#如果A3的內容為中文
print 'A2:',sh.cell_value(0,2).encode('gb2312')

def testXlwt(filename):
book=xlwt.Workbook()
sheet1=book.add_sheet('hello')
book.add_sheet('word')
sheet1.write(0,0,'hello')
sheet1.write(0,1,'world')
row1 = sheet1.row(1)
row1.write(0,'A2')
row1.write(1,'B2')

sheet1.col(0).width = 10000

sheet2 = book.get_sheet(1)
sheet2.row(0).write(0,'Sheet 2 A1')
sheet2.row(0).write(1,'Sheet 2 B1')
sheet2.flush_row_data()

sheet2.write(1,0,'Sheet 2 A3')
sheet2.col(0).width = 5000
sheet2.col(0).hidden = True

book.save(filename)

if __name__=='__main__':
testXlrd(u'你好。xls')
testXlwt('helloWord.xls')
base=datetime.date(1899,12,31).toordinal()
tmp=datetime.date(2013,07,16).toordinal()
print datetime.date.fromordinal(tmp+base-1).weekday()

Ⅱ 如何利用python從資料庫抓取數據

僅在里邊定義連接字串,在使用的時候在創建對象,使用完對專象就關閉
Config.asp:
Quote
<%
Dim Def_Sample
Def_Path=server.MapPath("data.mdb")
Def_Sample="DBQ="+Def_Path+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};" '連接字串屬
%>

Ⅲ 求教如何通過python抓取網頁中表格信息

看你抓的是靜態還是動態的了,這里是靜態表格信息的代碼


importurllib2
importre
importstring

defearse(strline,ch):
left=0
right=strline.find(ch)

whileright!=-1:
strline=strline.replace(ch,'')
right=strline.find(ch)
returnstrline

url=r"http://www.bjsta.com"

resContent=urllib2.urlopen(url).read()

resContent=resContent.decode('gb18030').encode('utf8')

soup=BeautifulSoup(resContent)

printsoup('title')[0].string

tab=soup.findAll('table')

trs=tab[len(tab)-1].findAll('tr')

fortrIterintrs:
tds=trIter.findAll('td')
fortdIterintds:
span=tdIter('span')
foriinrange(len(span)):
ifspan[i].string:
printearse(span[i].string,'').strip(),
else:
pass
print

Ⅳ python從mysql資料庫提取出來的數據怎麼在html里顯示

python從mysql資料庫提取出來的數據在版html里顯示權
import
mysql.connector
con
=
mysql.connector.connect(host='127.0.0.1',user='root',password='',db='testt')
rel
=
con.cursor()
rel.execute('select
*
from
school')
val
=
rel.fetchall()
val
=
val[0][1]
con.close();
rel.close();

Ⅳ 怎麼用python獲取mysql資料庫的表數據

我寫了個例子 Python3

1
2
3
4
5
6

import MySQLdb

db = MySQLdb.connect(host="localhost",user="root", passwd="sorry",db="test")
c=db.cursor()
c.execute("""SELECT COUNT(*) FROM emp""")
print (c.fetchone())

Ⅵ python進行資料庫查詢中怎麼把結果提取出來,跪謝

  1. 設置索引欄位。在開始提取數據前,先將member_id列設置為索引欄位。然後開始提取數據。

  2. 按行提取信息。第一步是按行提取數據,例如提取某個用戶的信息。

  3. 按列提取信息。第二步是按列提取數據,例如提取用戶工作年限列的所有信息。

  4. 按行與列提取信息。第三步是按行和列提取信息,把前面兩部的查詢條件放在一起,查詢特定用戶的特定信息。

  5. 在前面的基礎上繼續增加條件,增加一行同時查詢兩個特定用戶的貸款金額信息。

  6. 在前面的代碼後增加sum函數,對結果進行求和。

  7. 除了增加行的查詢條件以外,還可以增加列的查詢條件。

  8. 多個列的查詢也可以進行求和計算,在前面的代碼後增加sum函數,對這個用戶的貸款金額和年收入兩個欄位求和,並顯示出結果。

  9. 提取特定日期的信息。數據提取中還有一種很常見的需求就是按日期維度對數據進行匯總和提取,如按月,季度的匯總數據提取和按特定時間段的數據提取等等。

  10. 設置索引欄位。首先將索引欄位改為數據表中的日期欄位,這里將issue_d設置為數據表的索引欄位。按日期進行查詢和數據提取。

Ⅶ 如何用python抓取網頁資料庫

最簡單可以用urllib,python2.x和python3.x的用法不同,以python2.x為例:
import
urllib
html
=
urllib.open(url)
text
=
html.read()
復雜些可以用requests庫,支持各種請回求類型,答支持cookies,header等
再復雜些的可以用selenium,支持抓取javascript產生的文本

Ⅷ 想用python抓取別的網頁內容,放到自己伺服器的資料庫里,伺服器怎樣自己運行寫好的python文件

linux類伺服器的話:
可以用crontab來部署自動化任務,具體請自己查查資料
python xxx.py (若未配置環境變數,需跟上python的絕對路徑,如/usr/bin/python xxx.file)
windows類伺服器的話:
可以用windows自帶的管理工具中的任務計劃程序,來部署自動化執行
將命令寫入到一bat文件即可 同樣是python xxxx.py(若未配置環境變數,需跟上python的絕對路徑,如C:/python27/python xxx.file)

兩種部署,都可以根據自己的需要設置周期,如每天什麼時候,每周什麼時候等等

Ⅸ python進行資料庫查詢時怎麼把結果提取出來

  1. 設置索引欄位。在開始提取數據前,先將member_id列設置為索引欄位。然後開始提取數版據。

  2. 按行提取信息。第一步權是按行提取數據,例如提取某個用戶的信息。

  3. 按列提取信息。第二步是按列提取數據,例如提取用戶工作年限列的所有信息。

  4. 按行與列提取信息。第三步是按行和列提取信息,把前面兩部的查詢條件放在一起,查詢特定用戶的特定信息。

  5. 在前面的基礎上繼續增加條件,增加一行同時查詢兩個特定用戶的貸款金額信息。

  6. 在前面的代碼後增加sum函數,對結果進行求和。

  7. 除了增加行的查詢條件以外,還可以增加列的查詢條件。

  8. 多個列的查詢也可以進行求和計算,在前面的代碼後增加sum函數,對這個用戶的貸款金額和年收入兩個欄位求和,並顯示出結果。

  9. 提取特定日期的信息。數據提取中還有一種很常見的需求就是按日期維度對數據進行匯總和提取,如按月,季度的匯總數據提取和按特定時間段的數據提取等等。

  10. 設置索引欄位。首先將索引欄位改為數據表中的日期欄位,這里將issue_d設置為數據表的索引欄位。按日期進行查詢和數據提取。

Ⅹ 不用web框架,怎麼通過python獲取網頁表單提交的數據,並傳入資料庫啊,求大佬們幫幫忙

你想自己實現 wsgi 還是使用 wigiref 模塊?你需要了解wsgi 基礎,所有表單數據 可以通過 wsgi 的入口函數中的參數 envrion['wsgi.input'] 獲取到

wsgi參考資料:
https://www.python.org/dev/peps/pep-3333/
https://pep-3333-wsgi.readthedocs.io/en/latest/