• Python爬取金山词霸每日一句,存储到MySQL中


    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time    : 2018/7/3 20:25
    # @Author  : baoshan
    # @Site    : 
    # @File    : iciba.py.py
    # @Software: PyCharm Community Edition
    # 爬取金山词霸每日一句放到数据库中存储
    
    import json
    import requests
    import pymysql
    
    host = '10.10.1.10'
    port = 3306
    user = 'root'
    passwd = 'root'
    dbme = 'information_storage'
    table = 'iciba_daily_sentence'
    
    
    conn = pymysql.connect(host=host, user=user, passwd=passwd, db=dbme, port=port, charset="utf8")
    cur = conn.cursor()
    
    
    data = requests.get("http://open.iciba.com/dsapi/").text
    jdata = json.loads(data)
    dateline = jdata.get("dateline")
    caption = jdata.get("caption")
    content = jdata.get("content")
    fenxiang_img = jdata.get("fenxiang_img")
    note = jdata.get("note")
    picture = jdata.get("picture")
    picture2 = jdata.get("picture2")
    translation = jdata.get("translation")
    tts = jdata.get("tts")
    
    
    sql = 'insert into %s (dateline,caption,content,fenxiang_img,note,picture,picture2,translation,tts) ' 
          'values ("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s","%s")' 
          % (table, dateline,caption,content,fenxiang_img,note,picture,picture2,translation,tts)
    print(sql)
    try:
        cur.execute(sql)
    except:
        print("error")
    
    print(json.dumps(jdata, ensure_ascii=False))
    conn.commit()
    
    conn.close()
    

    数据库表结构如下

    CREATE TABLE `iciba_daily_sentence` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `dateline` char(10) DEFAULT NULL,
      `caption` varchar(20) DEFAULT NULL,
      `content` varchar(255) DEFAULT NULL,
      `fenxiang_img` varchar(255) DEFAULT NULL,
      `note` varchar(255) DEFAULT NULL,
      `picture` varchar(255) DEFAULT NULL,
      `picture2` varchar(255) DEFAULT NULL,
      `translation` varchar(255) DEFAULT NULL,
      `tts` varchar(255) DEFAULT NULL,
      `gmt_create` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      PRIMARY KEY (`id`),
      UNIQUE KEY `uniq_dateline` (`dateline`)
    ) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4;
    

    谢谢!

  • 相关阅读:
    Postman界面了解
    HTTP之网关的分类
    HTTP之如何控制缓存
    HTTP之缓存是如何保持副本的新鲜的!
    jenkins安装笔记
    git管理gogs安装笔记
    Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
    OneProxy学习笔记
    CentOS7使用笔记
    PHP Curl 请求同域的问题
  • 原文地址:https://www.cnblogs.com/zhzhang/p/9260767.html
Copyright © 2020-2023  润新知