本文作者:王 彤,中南财经政法大学统计与数学学院
本文编辑:杨婉清
技术总编:王子一
Stata&Python云端课程来啦!
程序开始,我们首先使用pymysql创建一个数据库连接对象以及游标对象,目的是在后面更好的执行SQL语句以及提交数据库执行。这一步骤我们在“Python与数据库交互—浅述pymysql”一文中有过详细介绍,我们要做的是创建一个tonghuashundb的数据库,接下来连接这个数据库,创建一个包含link字段ie_version表,一个包含title字段和time字段的ie_new表。
import pymysqldb = pymysql.connect(host = 'localhost',user = 'root',password = '你的密码',database = 'tonghuashundb',charset = 'utf8')cursor = db.cursor()sql1 = "create table ie_version(link varchar(100))charset=utf8"sql2 = "create table ie_new(title varchar(100),time varchar(20))charset=utf8"cursor.execute(sql1)cursor.execute(sql2)db.commit()

from selenium import webdriverimport timebrowser = webdriver.Chrome()browser.implicitly_wait(5)def get_page():browser.execute_script('window.scrollTo(0,document.body.scrollHeight)')time.sleep(2)li_list = browser.find_elements_by_xpath('/html/body/div[8]/div[1]/div[2]/ul/li')for li in li_list:link = li.find_element_by_xpath('./span/a').get_attribute('href')title = li.find_element_by_xpath('./span/a').texttime = li.find_element_by_xpath('./span/span').textsel = 'select * from ie_version where link=%s'cursor.execute(sel,[link])result = cursor.fetchall()if not result:ins1 = 'insert into ie_new values(%s,%s)'cursor.execute(ins1,[title,time])ins2 = 'insert into ie_version values(%s)'cursor.execute(ins2,[link])db.commit()print('数据爬取完成~')else:print('新闻已经存在啦~')
browser = webdriver.Chrome()start_url = 'http://news.10jqka.com.cn/today_list/'browser.get(start_url)while True:get_data()if browser.page_source.find('下一页') != -1:button = self.browser.find_element_by_xpath('/html/body/div[8]/div[1]/div[2]/div/span[1]/a[@class="next"]')browser.execute_script("arguments[0].click();", button)time.sleep(2)else:print('今天的新闻爬取完成啦~')


1.打开电脑的“任务计划程序”,点击创建基本任务;

2.为任务定义一个名称,也可以自己添加一些描述信息;

3.设置每天什么时间打开程序,一路点击“下一步”,最后也是最重要的是添加路径。“程序或脚本”填入Python安装路径;“添加参数”填入py文件所在的绝对路径。



对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
问世间情为何物,大数据也想参悟——后考研时代,何以解忧?唯有数据!
Python与数据库交互—浅述pymysql
偷懒小妙招|selenium之玩转鼠标键盘操作--鼠标篇
大家用Stata来“找茬”
“粉墨登场”——多期双重差分法(DID)的Stata操作
Python与百度地图合璧,绘制棒呆的热力地图
【数据可视化】统计图绘制神器:Seaborn
【爬虫实战】双一流大学的月关注度
【爬虫实战】“中国人不吃这一套”——人民日报微博评论分析
“学术明星”——双重差分法(DID)的Stata操作
【爬虫实战】南京地铁又上热榜——客流量分析
Stata中字符串的处理
我在哪里?调用高德API获取地址经纬度信息
超级简单的条件函数,轻松生成虚拟变量
Python云端课程福利大放送!0基础也能学~
【爬虫实战】“我们,继续新故事”——爬取LOL英雄皮肤
“人像动漫化”—Python实现抖音特效
《唐探3》做错了什么?|来自150万字影评的证据
关于我们
微信公众号“Stata and Python数据分析”分享实用的Stata、Python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
此外,欢迎大家踊跃投稿,介绍一些关于Stata和Python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

