1. # -*- coding: utf-8 -*-
  2. import os,sys
  3. import requests
  4. import bs4
  5. import pymysql
    #import MySQLdb
  6.  
  7. #连接MYSQL数据库
  8. db = pymysql.connect(host='127.0.0.1',user='root',password='mysql',db='test',port=3306,charset='utf8')
  9. #db = MySQLdb.connect('127.0.0.1','root','mysql','test',coon.set_character_set('utf8'))
  10. print('连接数据库成功!')
  11. conn = db.cursor() #获取指针以操作数据库
  12. conn.execute('set names utf8')
  13.  
  14. html = 'https://www.dongmanmanhua.cn/dailySchedule?weekday=MONDAY'
  15. result = requests.get(html)
  16. texts = result.text
  17.  
  18. data = bs4.BeautifulSoup(texts,'html.parser');
  19. lidata = data.select('div#dailyList ul.daily_card li')
  20. #print(lidata)
  21. arr = {}
  22.  
  23. for x in lidata:
  24. did = x.get('data-title-no')
  25. print(did)
  26. name = x.select('p.subj')
  27. name1 = name[0].get_text()
  28. url = x.a.get('href')
  29. #print(url)
  30. story = x.a.p
  31. story1 = story.string
  32. user = x.select('p.author')
  33. user1 = user[0].get_text()
  34. like = x.select('em.grade_num')
  35. like1 = like[0].get_text()
  36.  
  37. #写入MYSQL数据库
  38. t = [did,name1,url,story1,user1,like1]
  39. sql = u"INSERT INTO dongman(did,name,url,story,user,likes) VALUES(%s,%s,%s,%s,%s,%s)"
  40. conn.execute(sql,t)
  41. # t1 = (did,name1,url,story1,user1,like1)
  42. # sql1 = u'''insert into dongman(did,name,url,story,user,likes) values (%d,'%s','%s','%s','%s','%s')''' % t1
  43. # conn.execute(sql1)
  44. db.commit() #提交操作
  45. print('插入数据成功!')
  46.  
  47. #关闭MySQL连接
  48. conn.close()
  49. db.close()

Python 抓取数据存储到Mysql中的更多相关文章

  1. Python 抓取数据存储到Redis中

    redis是一个key-value存储结构.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  2. windows环境下nutch2.x 在eclipse中实现抓取数据存进mysql详细步骤

    nutch2.x 在eclipse中实现抓取数据存进mysql步骤 最近在研究nutch,花了几天时间,也遇到很多问题,最终结果还是成功了,在此记录,并给其他有兴趣的人提供参考,共同进步. 对nutc ...

  3. python抓取数据,python使用socks代理抓取数据

    在python中,正常的抓取数据直接使用urllib2 这个模块: import urllib2 url = 'http://fanyi.baidu.com/' stream = urllib2.ur ...

  4. python抓取数据构建词云

    1.词云图 词云图,也叫文字云,是对文本中出现频率较高的"关键词"予以视觉化的展现,词云图过滤掉大量的低频低质的文本信息,使得浏览者只要一眼扫过文本就可领略文本的主旨. 先看几个词 ...

  5. Python2爬虫获取的数据存储到MySQL中时报错"Incorrect string value: '\\xE6\\x96\\xB0\\xE9\\x97\\xBB' for column 'new' at row 1"的解决办法

    由于一直使用python3进行编码,在使用Python2时,将爬虫数据连接数据库进行存储时,出现如上的报错,经查资料 是数据库编码问题. 如下转自:http://www.cnblogs.com/liu ...

  6. 在mac下使用python抓取数据

    2015已经过去,这是2016的第一篇博文! 祝大家新年快乐! 但是我还有好多期末考试! 还没开始复习,唉,一把辛酸泪! 最近看了一遍彦祖的文章叫做 iOS程序员如何使用Python写网路爬虫 所以自 ...

  7. python爬取数据保存到Excel中

    # -*- conding:utf-8 -*- # 1.两页的内容 # 2.抓取每页title和URL # 3.根据title创建文件,发送URL请求,提取数据 import requests fro ...

  8. python抓取数据 常见反爬虫 情况

    1.报文头信息: User-Agent Accept-Language  防盗链 上referer 随机生成不同的User-Agent构造报头 2.加抓取等待时间 每抓取一页都让它随机休息几秒,加入此 ...

  9. python 抓取数据,pandas进行数据分析并可视化展示

    感觉要总结总结了,希望这次能写个系列文章分享分享心得,和大神们交流交流,提升提升. 因为半桶子水的水平,一直在想写什么,为什么写,怎么写. 直到现在找到了一种好的办法: 1.写什么 自己手上掌握的,工 ...

随机推荐

  1. iOS响应链和传递机制

    iOS中加载的时候会先执行main函数 int main(int argc, charchar * argv[]) { @autoreleasepool { return UIApplicationM ...

  2. Go语法的基本使用(三)

    // 长度 vs 容量. // 长度是目前里面有几个值 // 容量是最多能放多少个值 func main(){ var a =make(chan int,4) a<-1 a<-2 a< ...

  3. linux添加开机启动项、登陆启动项、定时启动项、关机执行项等的方法

    使用chkconfig命令可以查看在不同启动级别下课自动启动的服务(或是程序),命令格式如下: chkconfig --list 可能输出如下: network         0:off   1:o ...

  4. 2019/9/18 IIS服务器 ftp站安装:隔离模式

    net user ftp1  /add 添加两个账户 在d盘下创建ftp站的文件夹ftptest,进入文件夹,创建文件夹LocalUser,进入LocalUser 分别创建administrator ...

  5. Single List Reversion

    LeetCode 1. 基于头插法的迭代: public ListNode reverseList(ListNode head) { if(head == null) return null; Lis ...

  6. DNS信息探测

    前面学习一下DNS域名解析原理及过程,今天我们学习下DNS域名信息的探测 本章主要目标是从各个角度搜集测试目标的基本信息,包括搜集信息的途径.各种工具的使用方法,以及简单的示例. 0x00 DNS信息 ...

  7. JAVA GUI设

    1.两种设置大小的方式: //Border border1=BorderFactory.createEmptyBorder(20,20,20,20); //设置大小        panel.setB ...

  8. P1081 [NOIP2012]开车旅行[倍增]

    P1081 开车旅行    题面较为啰嗦.大概概括:一个数列,只能从一个点向后走,两种方案:A.走到和自己差的绝对值次小的点B.走到和自己差的绝对值最小点:花费为此差绝对值:若干询问从规定点向后最多花 ...

  9. python之ORM

    pymysql python操作数据库的基本步骤: 导入相应的python模块: 使用connect函数连接数据库,并返回一个connection对象: 通过connection对象的cursor方法 ...

  10. poj 1064 高精度 二分

    Cable master Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 32191 Accepted: 6888 Descrip ...