当先锋百科网

首页 1 2 3 4 5 6 7
# -*- coding:utf-8 -*-
# @time  : 9:25
# @Author:aaaa
import psycopg2
import pandas as pd

def getData():
    # 链接数据库
    conn = psycopg2.connect(database='postgres',user='postgres',password='postgres',host='localhost',port='5432')
    curs = conn.cursor()
    # 编写SQL
    sql = 'select distinct url from table '

    # 数据库中执行SQL命令
    curs.execute(sql)
    # 获取数据
    data = curs.fetchall()
    # 关闭指针和数据库
    curs.close()
    conn.close()
    return data

df = pd.DataFrame(getData())
#pandas在写入excel是会对链接形式的数据(http或者https类型)有一个检测和长度的限制,一般是255,若超过则会报错,因而需要使用参数 options={'strings_to_urls': False},写入时就不会默认把字符串里含有http或者https的str认为是链接,也就不会限制长度。
writer = pd.ExcelWriter(r'path', engine='xlsxwriter', options={'strings_to_urls': False}) 
df.to_excel(writer)
writer.save()