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;
谢谢!
Python爬取金山词霸每日一句,存储到MySQL中的更多相关文章
- Python爬取招聘信息,并且存储到MySQL数据库中
前面一篇文章主要讲述,如何通过Python爬取招聘信息,且爬取的日期为前一天的,同时将爬取的内容保存到数据库中:这篇文章主要讲述如何将python文件压缩成exe可执行文件,供后面的操作. 这系列文章 ...
- Python爬取新浪微博评论数据,写入csv文件中
因为新浪微博网页版爬虫比较困难,故采取用手机网页端爬取的方式 操作步骤如下: 1. 网页版登陆新浪微博 2.打开m.weibo.cn 3.查找自己感兴趣的话题,获取对应的数据接口链接 4.获取cook ...
- 爬取豆瓣电影top250并存储到mysql数据库
import requests from lxml import etree import re import pymysql import time conn= pymysql.connect(ho ...
- Python3爬取前程无忧数据分析工作并存储到MySQL
1.导入包import requests #取数from lxml import etree #用xpath解析import pymysql #连接数据库import chardet #自动获取编码2 ...
- Python3.5爬取豆瓣电视剧数据并且同步到mysql中
#!/usr/local/bin/python # -*- coding: utf-8 -*- # Python: 3.5 # Author: zhenghai.zhang@xxx.com # Pro ...
- Python3.5爬取cbooo.cn数据并且同步到mysql中
#!/usr/local/bin/python # -*- coding: utf-8 -*- # Python: 3.5 # Author: wucl(),zhenghai.zhang # Prog ...
- 利用python爬取海量疾病名称百度搜索词条目数的爬虫实现
实验原因: 目前有一个医疗百科检索项目,该项目中对关键词进行检索后,返回的结果很多,可惜结果的排序很不好,影响用户体验.简单来说,搜索出来的所有符合疾病中,有可能是最不常见的疾病是排在第一个的,而最有 ...
- python爬取网站数据
开学前接了一个任务,内容是从网上爬取特定属性的数据.正好之前学了python,练练手. 编码问题 因为涉及到中文,所以必然地涉及到了编码的问题,这一次借这个机会算是彻底搞清楚了. 问题要从文字的编码讲 ...
- python爬取网站数据保存使用的方法
这篇文章主要介绍了使用Python从网上爬取特定属性数据保存的方法,其中解决了编码问题和如何使用正则匹配数据的方法,详情看下文 编码问题因为涉及到中文,所以必然地涉及到了编码的问题,这一次借这 ...
随机推荐
- python魔法方法-反射运算和增量运算
反射运算 什么是反射运算符,其实就是反转了两个对象,下面先看一个普通运行符的实现: class Foo(object): def __init__(self, x): self.x = x def _ ...
- Shiro笔记(三)授权
Shiro笔记(三)授权 一.授权方式 1.编程式: Subject subject=SecurityUtils.getSubject(); if(subject.hasRole("root ...
- redis设置key总结
1.redisclient.hgetall(keyVal) : 返回哈希表 key 中,所有的域和值
- Django拾遗--pagination、sitemap、admin、form
Django拾遗--pagination.sitemap.admin.form pagination 其实这个分页模块的原理就是根据设定的每页条数来分割queryset.查询结果/每页子项数目=页数 ...
- 添加 vip
两台机器:172.16.91.101 172.16.91.107 在91.101上增加虚拟ip,92网段的 ifconfig eth0:1 172.16.92.2 netmask 255.255.25 ...
- 使用 Docker 搭建 Tomcat 运行环境
转自: http://m.oschina.net/blog/616526, 版权归原作者所有. 1 Docker与虚拟机 2 搭建过程 2.1 准备宿主系统 准备一个 CentOS 7操作系统 ...
- DIY自己的AllocateHWnd函数
Classes单元的AllocateHWnd函数是需要传入一个处理消息的类的方法的作为参数的,原型: function AllocateHWnd(Method: TWndMethod): HWND; ...
- Android 创建单独的服务运行在后台(无界面)
转自:https://blog.csdn.net/a704225995/article/details/56481934 今天项目有个需求是,开启一个服务单独运行在后台,而且还不能有界面,在度娘搜索了 ...
- Knockout.Js官网学习(Mapping插件)
前言 Knockout设计成允许你使用任何JavaScript对象作为view model.必须view model的一些属性是observable的,你可以使用KO绑定他们到你的UI元素上,当这些o ...
- 如何在Windows 10上访问NFS的share
大致过程是: 1. 开启名为"Services for NFS"的Windows Feature. 2. 如果需要拥有写权限,需要修改注册表. 3. Mount即可. 具体步骤详见 ...