- 浏览: 373471 次
- 性别:
- 来自: 四川
文章分类
- 全部博客 (247)
- 数据库以及sql (11)
- java (48)
- 爬虫学习 (20)
- java编程 (28)
- python编程以及安装和配置 (27)
- oracle数据库 (32)
- mongodb基本操作 (4)
- linux学习 (7)
- easyUI (2)
- nodeJs (8)
- python学习 (16)
- 其他 (13)
- hadoop (1)
- svn (1)
- 汉字 (1)
- windows (2)
- jsp (5)
- fiddler (1)
- ETL (1)
- teamviewer (1)
- maven (4)
- GIT (2)
- datagrip (1)
- ocr (1)
- redis (3)
- mysql (3)
- linux (1)
- 数据服务 (0)
最新评论
# coding=utf-8
'''
Created on 2017年2月20日
@author: chenkai
'''
import MySQLdb
import sys
from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.remote import webelement
from selenium.webdriver.remote.webelement import WebElement
'''
连接数据库
'''
def getConn():
host ='127.0.0.1'
user ='root'
passwd ='123456'
port = 3306
dbcon=MySQLdb.connect(host,user,passwd,port=3306,charset="utf8")
return dbcon
def getCursor(mysqlConn):
return mysqlConn.cursor()
def closeDBConnandCur(cur,mysqlConn):
cur.close()
mysqlConn.commit() #加上这句,关闭数据库连接前提交数据库操作
mysqlConn.close()
#连接数据库
mysqlConn=getConn()
#得道curser
cur=getCursor(mysqlConn)
#使用test数据库
cur.execute("use test")
'''
浏览器
'''
options=webdriver.ChromeOptions()
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"])
driver=webdriver.Chrome(executable_path="C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe",chrome_options=options) #调用chrome浏览器
#print dir(driver)
driver.get('https://sanya.nuomi.com/326')
#点击按钮
#driver.find_element_by_class_name("next-btn").click()
#
page = driver.page_source
# print(page)
# print type(page)
#
soup = BeautifulSoup(page,'html.parser',from_encoding="utf-8")
# print soup.prettify()
#
div_list=soup.find_all("div", class_="contentbox")
shopUrl=""
shopName=""
index=1001
for con in div_list:
index+=1
shopUrl=("https:"+con.a.get("href")).encode('utf-8')#转码,插入mysql后不会乱码
shopName=(con.h4.get_text()).encode('utf-8')
# shopUrl.encode('utf-8')
# shopName.encode('utf-8')
print shopUrl,shopName
print 'insert into k_bdnm_shopinfo values(%d,%s,%s)'%(index,shopUrl,shopName)
try:
cur.execute("insert into k_bdnm_shopinfo values(%d,'%s','%s')"%(index,shopUrl,shopName))
except MySQLdb.Error, e:
print "Mysql Error %d: %s" % (e.args[0], e.args[1])
driver.quit()
closeDBConnandCur(cur,mysqlConn)#关闭游标和数据库连接
'''
数据表信息
'''
CREATE TABLE `k_bdnm_shopinfo` (
`shop_id` int(11) NOT NULL auto_increment,
`shop_url` varchar(300) NOT NULL,
`shop_name` varchar(100) NOT NULL,
PRIMARY KEY (`shop_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
'''
Created on 2017年2月20日
@author: chenkai
'''
import MySQLdb
import sys
from selenium import webdriver
from bs4 import BeautifulSoup
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.remote import webelement
from selenium.webdriver.remote.webelement import WebElement
'''
连接数据库
'''
def getConn():
host ='127.0.0.1'
user ='root'
passwd ='123456'
port = 3306
dbcon=MySQLdb.connect(host,user,passwd,port=3306,charset="utf8")
return dbcon
def getCursor(mysqlConn):
return mysqlConn.cursor()
def closeDBConnandCur(cur,mysqlConn):
cur.close()
mysqlConn.commit() #加上这句,关闭数据库连接前提交数据库操作
mysqlConn.close()
#连接数据库
mysqlConn=getConn()
#得道curser
cur=getCursor(mysqlConn)
#使用test数据库
cur.execute("use test")
'''
浏览器
'''
options=webdriver.ChromeOptions()
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors"])
driver=webdriver.Chrome(executable_path="C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe",chrome_options=options) #调用chrome浏览器
#print dir(driver)
driver.get('https://sanya.nuomi.com/326')
#点击按钮
#driver.find_element_by_class_name("next-btn").click()
#
page = driver.page_source
# print(page)
# print type(page)
#
soup = BeautifulSoup(page,'html.parser',from_encoding="utf-8")
# print soup.prettify()
#
div_list=soup.find_all("div", class_="contentbox")
shopUrl=""
shopName=""
index=1001
for con in div_list:
index+=1
shopUrl=("https:"+con.a.get("href")).encode('utf-8')#转码,插入mysql后不会乱码
shopName=(con.h4.get_text()).encode('utf-8')
# shopUrl.encode('utf-8')
# shopName.encode('utf-8')
print shopUrl,shopName
print 'insert into k_bdnm_shopinfo values(%d,%s,%s)'%(index,shopUrl,shopName)
try:
cur.execute("insert into k_bdnm_shopinfo values(%d,'%s','%s')"%(index,shopUrl,shopName))
except MySQLdb.Error, e:
print "Mysql Error %d: %s" % (e.args[0], e.args[1])
driver.quit()
closeDBConnandCur(cur,mysqlConn)#关闭游标和数据库连接
'''
数据表信息
'''
CREATE TABLE `k_bdnm_shopinfo` (
`shop_id` int(11) NOT NULL auto_increment,
`shop_url` varchar(300) NOT NULL,
`shop_name` varchar(100) NOT NULL,
PRIMARY KEY (`shop_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
发表评论
-
python中将unicode(u'\u7684') 转中文字符
2018-08-16 16:16 4011ddd=u'\u7684' ddd=ddd.encode(&q ... -
python中的开放运算
2017-07-06 09:39 1041要点: 将整数用浮点数表示:由于Python的整数除法,为了 ... -
Python多线程爬取网站image的src属性实例
2017-05-16 11:18 1719# coding=utf-8 ''' Created on 2 ... -
eclipse创建scrapy项目
2017-05-12 17:23 10561. 您必须创建一个新的Scrapy项目。 进入您打算存储代码 ... -
windows安装scrapy框架步骤
2017-05-12 13:05 607Scrapy简介 Scrapy是一个快速,高效的网页抓取Pyt ... -
python操作mongoDB
2017-05-12 10:04 1054#coding=utf-8 from pymongo impo ... -
windows下安装Scrapy框架(python)
2017-03-22 14:39 7521、下载安装Python2.7.6, ... -
python "\xc5\xc0\xb3\xe6" 转汉字
2017-03-10 10:10 5353print "\xc5\xc0\xb3\xe6&qu ... -
python_GUI应用程序代码
2017-03-03 10:06 667# coding=utf-8 ''' Created on 2 ... -
python读写excel
2017-03-03 10:05 1056# coding=utf-8 ''' Created on 2 ... -
python标准异常分类
2017-03-01 16:09 443ppython标准异常分类 BaseException ... -
python在linux、windows下执行命令的方法
2017-02-22 16:52 1056windows下: import os cmdres= os. ... -
python中selenium 滚动条下拉 操作
2017-02-22 11:16 6748方法一)使用js脚本直接操作,方法如下: js=" ... -
python+selenium浏览器调用(chrome、ie、firefox)
2017-02-20 14:35 1948#coding=utf-8 from selenium im ... -
windows下安装beautifulsoup
2017-02-14 10:57 8711.去beautiful soup官网上去下载最新版本是4.3 ... -
windows下casperjs安装以及配置
2017-02-14 10:20 415下载casperjs,解压后命名为casperjs 添加环境变 ... -
wingdows下安装phantomjs
2017-02-14 10:19 425下载phantomjs后解压,重命名为phantomjs 添加 ... -
python下安装beautifulsoup4-4.3.1
2017-02-07 16:18 5911.去beautiful soup官网上去下载最新版本是4.3 ... -
python中的正则表达式,python
2017-02-07 10:20 656# coding=utf-8 ''' Created on 2 ... -
python时间格式
2017-01-17 10:35 4941. 日期输出格式化 datetime => strin ...
相关推荐
### Python抓取京东数据知识点详解 #### 一、项目背景与目标 本项目旨在通过Python爬虫技术抓取京东网站的商品评论数据,并将其存储至MySQL数据库中,方便后续的数据分析和挖掘工作。该项目重点关注京东图书商品的...
以购买日期为例,使用Python + Mysql的搭配进行实现,程序不大,才100行。相关的解释我都在程序里加注了: from selenium import webdriver from bs4 import BeautifulSoup import re import win32com.client import...
Python爬虫技术是一种用于自动化获取网页数据的编程技术,它能高效地遍历网络上的大量信息,尤其在处理视频资源时,结合数据库的使用,可以实现视频数据的存储与检索。在这个项目中,我们将深入探讨如何使用Python...
"爬虫与数据基础"是指Python在数据抓取和预处理中的应用。BeautifulSoup、Scrapy等库能高效地爬取网页数据,而Requests库可以处理网络请求。获取数据后,Pandas库提供了强大的数据清洗、分析和转换功能。正则表达式...
本教程"PythonCrawler-master"旨在教授如何利用Python进行网页数据的抓取和处理。教程涵盖了网络爬虫的基础知识,包括HTML解析、HTTP请求、数据存储等核心内容,同时也涉及了一些高级技巧,如模拟登录、反爬虫策略和...
- **连接与操作**:使用Python MySQLdb或pymysql模块进行连接和数据操作。 - **MongoDB**: - **安装**:通过命令行安装MongoDB服务端。 - **配置**:创建数据库、集合。 - **连接与操作**:使用PyMongo库进行...
Python提供了多种数据库接口,如SQLite、MySQLdb等,可以方便地进行数据存取。 9. **测试与调试**:RPA系统的可靠性依赖于充分的测试。单元测试、集成测试和端到端测试是必要的,Python的unittest和pytest框架可以...
Python提供了多种数据处理库,如Pandas用于数据清洗和分析,MySQLdb或pymysql用于数据库操作,JSON和CSV则用于数据序列化和导出。 在实际的爬虫项目中,我们还需要学习如何处理异常、进行多线程或多进程爬取以提高...
在直播后台Web自动化中,Python常用于编写自动化脚本,如使用Selenium、Requests等库进行网页操作和数据抓取。Python的丰富的库支持使得它成为自动化测试的理想选择。 2. **前端技术理解**:在自动化过程中,理解...
9. **数据存储**: 抓取到的数据通常需要存储,Python提供了许多库如pandas、sqlite3、MySQLdb等,用于将数据保存到CSV、数据库等不同格式。 10. **IP代理**: 防止因频繁请求被目标网站封禁,使用IP代理池可以切换IP...