python爬取数据保存入库

import urllib2

import re

import MySQLdb

class LatestTest:
    #初始化
    def __init__(self):
        self.url="https://toutiao.io/latest"
        self.UserAgent=‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.97 Safari/537.36‘
        self.header={‘User-Agent‘:self.UserAgent}

    #获取URL、标题、邮箱 保存到list
    def getDate(self):

        request=urllib2.Request(self.url,headers=self.header)
        respone=urllib2.urlopen(request).read()
        #print respone
        content=re.compile(r‘<div class="post">.*?class="title">.*?href="(.*?)">(.*?)</a>.*?<div class="meta">.*?<span>(.*?)</span>‘,re.S)
        urls=re.findall(content,respone)
        namelist=[]

        for url in urls:
                #print url[0],url[1],url[2]
            namelist.append([url[0].strip(),url[1].strip(),url[2].strip()])
            if len(namelist)>=10:
                break

        return namelist
    #保存数据到mysql数据库
    def savaDateMysql(self,url,title,email):
        sql="insert into content(url,title,email)values(‘%s‘,‘%s‘,‘%s‘)" %(url,title,email)
        try: 

            conn=MySQLdb.connect(‘192.168.200.23‘,‘root‘,‘g6s8m3t7s‘,‘mysql‘,charset=‘utf8‘)
            cursor=conn.cursor()
           # cursor.execute(‘create table IF NOT EXISTS content(id int AUTO_INCREMENT PRIMARY KEY,url varchar(100),title varchar(100),email varchar(100))‘)
            #cursor.execute(‘drop table IF EXISTS content‘)
            cursor.execute(sql)
            conn.commit()
        except Exception,e:
            print e
        finally:
            conn.close()

if __name__==‘__main__‘:
    lat=LatestTest()
    contentlist=lat.getDate()
    try:
        for tent in contentlist:
            url=tent[0].strip()
            title=tent[1].strip()
            email=tent[2].strip()
            print url,title,email
            lat.savaDateMysql(url,title,email)
    except Exception,e:
        print e
时间: 2024-10-13 12:18:33

python爬取数据保存入库的相关文章

python爬取数据并保存到数据库中(第一次练手完整代码)

1.首先,下载需要的模块requests, BeautifulSoup, datetime, pymysql(注意,因为我用的python3.7,不支持mysqldb了),具体的下载方法有pip下载,或者使用Anaconda版本python的童鞋可以使用conda下载. 2.创建conndb,py,包含数据库的连接断开,增删改查等操作: #!/usr/bin/env python # -*- coding:utf-8 -*- import pymysql def conn_db(): # 连接数

python爬取数据被限制?一招教你伪造反爬技术!

1.Headers限制 这应该是最常见的,最基本的反爬虫手段,主要是初步判断你是否是真实的浏览器在操作. 这个一般很好解决,把浏览器中的Headers信息复制上去就OK了. 值得注意的是,很多网站只需要userAgent信息就可以通过,但是有的网站还需要验证一些其他的信息,比如知乎,有一些页面还需要 authorization 的信息.所以需要加哪些Headers,还需要尝试,可能还需要Referer.Accept-encoding等信息. 2.IP限制 限制IP也是很多网站反爬虫的初衷,有些人

Python 爬取数据入库mysql

1 # -*- enconding:etf-8 -*- 2 import pymysql 3 import os 4 import time 5 import re 6 serveraddr="localhost" 7 user="root" 8 password="123456" 9 databaseName="test" 10 filename="./data/UNCL.csv" 11 12 def c

selenium+python爬取数据跳转网页

项目要做一个四个层级栏的数据抓取,而且点击查询后数据会在新跳出的网页. 源码如下 注释解释 from selenium import webdriver import selenium #from time import sleep as sp url='http://202.127.42.157/moazzys/nongqing.aspx' site=webdriver.Chrome() site.get(url) #data={} mainhandle=site.current_window

python爬取网页数据

python时间戳 将时间戳转为日期 #!/usr/bin/python # -*- coding: UTF-8 -*- # 引入time模块 import time #时间戳 timeStamp = 1581004800 timeArray = time.localtime(timeStamp) #转为年-月-日形式 otherStyleTime = time.strftime("%Y-%m-%d ", timeArray) print(otherStyleTime) python爬

python 爬取天猫美的评论数据

笔者最近迷上了数据挖掘和机器学习,要做数据分析首先得有数据才行.对于我等平民来说,最廉价的获取数据的方法,应该是用爬虫在网络上爬取数据了.本文记录一下笔者爬取天猫某商品的全过程,淘宝上面的店铺也是类似的做法,不赘述.主要是分析页面以及用Python实现简单方便的抓取. 笔者使用的工具如下 Python 3--极其方便的编程语言.选择3.x的版本是因为3.x对中文处理更加友好. Pandas--Python的一个附加库,用于数据整理. IE 11--分析页面请求过程(其他类似的流量监控工具亦可).

python爬取某个网站的图片并保存到本地

python爬取某个网站的图片并保存到本地 #coding:utf-8 import urllib import re import sys reload(sys) sys.setdefaultencoding('gb2312') #获取整个页面的数据 def getHtml (url): page = urllib.urlopen(url) html = page.read() return html #保存图片到本地 def getImg(html): reg = r'src="(.+?\.

Python爬取全国历史天气数据

1.通过爬取历史首页,来获取城市地址和历史时间,构建链接: ''' 获取全国的城市名称和链接 ''' import requests from lxml import etree import random import pymongo from time_list import get_time client = pymongo.MongoClient('localhost',27017) tianqi_data = client['tianqi_data'] time_url_table =

Python爬取天气网历史天气数据

我的第一篇博客,哈哈哈,记录一下我的Python进阶之路! 今天写了一个简单的爬虫. 使用python的requests 和BeautifulSoup模块,Python 2.7.12可在命令行中直接使用pip进行模块安装.爬虫的核心是利用BeautifulSoup的select语句获取需要的信息. pip install requests pip install bs4 以武汉市2017年5~7月的历史为例爬取天气网中武汉市的历史天气数据. 7月对应的网址为http://lishi.tianqi