Python 批量获取Baidu关键词的排名并入库

1.[代码][Python]代码

#-*- coding: UTF-8 -*-

#Python UTF-8 抓取百度关键词V1.0

#key.txt是抓取文件配置

#author PHPer.yang@gmail.com

import cgi,urllib #URL读取

import re #正则匹配

import MySQLdb #MySQL

import datetime #时间

#import time,thread #多线程

"""

MySQL表结构

CREATE TABLE `baidu` (

`id` int(10) unsigned NOT NULL auto_increment,

`url` varchar(200) NOT NULL,

`title` varchar(600) NOT NULL,

`keys` varchar(100) NOT NULL,

`bdurl` varchar(200) NOT NULL,

`date` date NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

"""

def Yang_Config ():

fp = open('key.txt','r')

for line in fp.read().split('@'):

word = line.split(',') #word 是字典

#for item in word :

#print item.encode("UTF-8")

#print '------'

if len(word) > 1:

yang_u = word[0]

yang_k = word[1]

Yang_Spider(yang_u,yang_k)

#抓取页面开始

def Yang_Spider(yang_u,yang_k):

url = 'http://www.baidu.com/s?wd=%s+site:%s&&rn=100'% (yang_k,yang_u)

print url

fp = urllib.urlopen(url).read()

#print fp re.search

m = re.findall(r"

()?(.*?)\s*?.*?.*? ((\d{4}\-\d{1,2}\-\d{1,2})|(\d+小时前)|(\d+分钟前)) .*?.*?
",fp)

if m:

#print m #

for s in m:#数组抓取过来是gbk 转码成utf8.encode("UTF-8") 是汉字decode('gbk') ASNII转UTF8 入数据库操作print str(s[3]) #

print '~~~'.join(s) #切割数组

Yang_MySQL (yang_k,yang_u,s)

#入库

#for i, s in enumerate(m.group(3)):

#print i,s

else:

print 'not search'

def Yang_MySQL (k,u,s):

global cursor,d

cursor.execute("set names utf8")

key_unicode = s[3].decode('gb2312') #gb2312

key_utf8 = key_unicode.encode('utf-8')

SQL = " INSERT INTO `baidukey`.`baidu` (`url` ,`title` ,`keys` ,`bdurl` ,`date`) VALUES ('%s', '%s', '%s','%s','%s'); " % (s[2],key_utf8,k,u,d)

insert = cursor.execute(SQL)

#print SQL

#运行抓取函数

conn = MySQLdb.connect(host="localhost",user="phper",passwd="123456",db="baidukey")

cursor = conn.cursor()

t = datetime.datetime.now()

d = t.strftime('%Y-%m-%d')#%H:%M:%S

Del = " DELETE FROM `baidukey`.`baidu` WHERE date = '%s'" % (d)

cursor.execute(Del)

Yang_Config()

2.[代码][Python]代码

imop.com,php@imop.us,python

python关键词排名批量查排名_Python 批量获取Baidu关键词的排名并入库相关推荐

  1. python从mysql导出大量数据_python批量导出导入MySQL用户的方法

    数据库迁移(A -> B),需要把用户也迁移过去,而用户表(mysql.user)有上百个用户.有2种方法进行快速迁移: 1,在同版本的条件下,直接备份A服务器的mysql数据库,还原到B服务器 ...

  2. python批量新建文件_python批量处理

    python opencv图像二值化批量处理 from skimage import data_dir,io,transform,color,filters import numpy as np im ...

  3. python批量操作word文档实战_python批量实现Word文件转换为PDF文件

    本文为大家分享了python批量转换Word文件为PDF文件的具体方法,供大家参考,具体内容如下 1.目的 通过万能的Python把一个目录下的所有Word文件转换为PDF文件. 2.遍历目录 作者总 ...

  4. python解析xml读取指定属性_python批量修改xml某些内容和属性

    在训练时,有时候需要将jpg格式转换为png格式,顺便也要把jpg标注的xml文件转换为png的xml文件.例如,需要把xml文件中的图像后缀名".jpg"批量去掉,这时候就需要批 ...

  5. python数据科学速查表_Python数据科学速查表:中级

    python数据科学速查表 The printable version of this cheat sheet 该备忘单的可打印版本 The tough thing about learning da ...

  6. python关键词大全_Python 批量获取Baidu关键词的排名并入库

    1.[代码][Python]代码 #-*- coding: UTF-8 -*- #Python UTF-8 抓取百度关键词V1.0 #key.txt是抓取文件配置 #author PHPer.yang ...

  7. python批量分析表格_python批量设置多个Excel文件页眉页脚的脚本

    python批量设置多个Excel文件页眉页脚的脚本 本文实例为大家分享了python批量设置多个Excel文件页眉页脚的具体代码,供大家参考,具体内容如下 import os import open ...

  8. python 批量下载 代码_python 批量下载文件

    有时候看到好看的视频就想保存到本地,但是有的网站视频都是分段的,先去请求一个文件列表,再按照列表去拼接请求分段视频. 就类似这样:(这是开讲了某期的视频请求列表 http://hls.cntv.mya ...

  9. python 操作word页眉表格_python批量设置多个Excel文件页眉页脚的脚本

    本文实例为大家分享了python批量设置多个Excel文件页眉页脚的具体代码,供大家参考,具体内容如下 import os import openpyxl from openpyxl.workshee ...

  10. python 批量创建变量_Python批量生成和调用变量

    这几天写代码中遇到的一个常见问题,在Python 中如何批量的生成一些变量,如生成变量X1, X2, X3 ,并在后续的方法中调用,完成赋值.取值等操作.这个问题也算是常见的吧,之前遇到过,也不了了之 ...

最新文章

  1. 第二章:2.8 通过Django 在web页面上面输出 “Hello word ”
  2. Makefile文件的使用
  3. mysql2003错误如何解决_如何安装最新版redis6错误解决以及配置开机启动等
  4. mysql 远程登陆不上
  5. windows中怎么添加定时任务
  6. Leetcode--84. 柱状图中最大的矩形
  7. 秋招注意事项和面试通关攻略
  8. Python四:HoughCircles()霍夫变换
  9. python中定义元组的符号_python中得元组和字符串详解,有这么一篇文章就够了
  10. Uva1343-The Rotation Game-IDA*算法
  11. 结晶紫行业调研报告 - 市场现状分析与发展前景预测
  12. ffmpeg filter过滤器 基础实例及全面解析
  13. bizhubc226说明书_bizhub c226驱动下载-柯尼卡美能达c226驱动下载 v1.0官方版--pc6下载站...
  14. OpenCV学习——摄像头实时进行人脸识别
  15. CryptoJS加密使用
  16. C 语言学习笔记(一):C 语言的开发环境
  17. Asp.net web服务处理程序(第六篇)
  18. XTU 1336 Perfect Palindrome Number
  19. 2019备考[嵌入式系统设计师]之基础知识
  20. 4 Kubernetes资源-Pod控制器(1)

热门文章

  1. 洛谷 P1957 口算练习题
  2. RFID医疗废物管理系统解决方案-RFID技术的医疗废弃物管理系统
  3. Win10系统任务栏出现假死现象的解决办法
  4. MIS系统(1)- MIS系统的介绍
  5. 利用谷歌地图模拟地图坐标数据
  6. Edge工程师:我在微软300+天,谈谈我眼中的微软
  7. 告诉我图样图森破的两道简单C++笔试题
  8. HDU1862 FLY
  9. 某教程学习笔记(一):1、windows基础
  10. 软件开发价格估算方法