Python是闻名的“龟叔”GuidovanRossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程言语。
创始人GuidovanRossum是BBC出品英剧MontyPython’sFlyingCircus(中文:蒙提派森的飞翔马戏团)的狂热粉丝,因此将自己创造的这门编程言语命名为Python。
人生苦短,我用python,翻译自”Lifeisshort,youneedPython”
Python英式发音:/?pa??n/,中文相似‘拍森’。而美式发音:/?pa??n/,中文相似‘拍赏’。我看麻省理工授课教授读的是‘拍赏’,我觉得国内大多是读‘拍森’吧。
2017年python排榜首也无可争议,比较AI榜首言语,在当下人工智能大数据大火的情况下,python无愧榜首言语的称谓,至于C、C++、java都是万年的老大哥了,在代码量比较方面,小编信任java肯定是完爆其它言语的。
不过从这一年的编程言语盛行趋势看,java依然是传达最多的,比较无论app、web、云计算都离不开,而其相对python而言,学习路径更困难一点,想要转行编程,并且追逐潮流,python已然是最佳言语。
许多大型网站便是用Python开发的,国内:豆瓣、搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝、热酷、马铃薯、新浪、果壳…;国外:谷歌、NASA、YouTube、Facebook、工业光魔、红帽…
Python将被归入高考内容
浙江省信息技术课程改革方案已经出台,Python确认进入浙江省信息技术高考,从2018年起浙江省信息技术教材编程言语将会从vb更换为Python。其实不止浙江,教育大省北京和山东也确认要把Python编程根底归入信息技术课程和高考的内容系统,Python言语课程化也将成为孩子学习的一种趋势。尤其山东省最新出书的小学信息技术六年级教材也加入了Python内容,小学生都开始接触Python言语了!!
python爬虫代码示例
这里有两个爬虫的实例,是刚开始学python用的,一个是爬取京东茅台酒谈论的,另一个是爬取新浪网国内新闻的,两个都是网上的教程里边的,代码稍微有些不同,供参考学习。
都可以在andconda里跑
importrequestsfrombs4importBeautifulSoupfromdatetimeimportdatetimeimportreimportjsonimportpandas
news_total=[]
commentURL=’http://comment5.news.sina.com.cn/page/info?version=1&format=js&channel=gn&newsid=comos-{}&group=&compress=0&ie=utf-8&oe=utf-8&page=1&page_size=20’url=’http://api.roll.news.sina.com.cn/zt_list?channel=news&cat_1=gnxw&cat_2==gdxw1||=gatxw||=zs-pl||=mtjj&level==1||=2&show_ext=1&show_all=1&show_num=22&tag=1&format=json&page={}&callback=newsloadercallback&_=1509373193047’defparseListLinks(url):
newsdetails=[]
res=requests.get(url)
jd=json.loads(res.text.strip().lstrip(‘newsloadercallback(‘).rstrip(‘);’))forentinjd[‘result’][‘data’]:
newsdetails.append(getNewsDetail(ent[‘url’]))returnnewsdetailsdefgetNewsDetail(newsurl):
result={}
res=requests.get(newsurl)
res.encoding=’utf-8’soup=BeautifulSoup(res.text,’html.parser’)
result[‘title’]=soup.select(‘#artibodyTitle’)[0].text
result[‘newssource’]=soup.select(‘.time-sourcespana’)[0].text
timesource=soup.select(‘.time-source’)[0].contents[0].strip()
dt1=datetime.strptime(timesource,’%Y年%m月%d日%H:%M’)
result[‘dt’]=dt1.strftime(‘%Y-%m-%d-%H:%M’)
result[‘article’]=”.join([p.text.strip()forpinsoup.select(‘#artibodyp’)[:-1]])
result[‘editor’]=soup.select(‘.article-editor’)[0].text.strip(‘责任编辑:’)
result[‘comments’]=getCommentCounts(newsurl)print(‘取得一条新闻’)returnresultdefgetCommentCounts(newsurl):
m=re.search(‘doc-i(.+).shtml’,newsurl)
newsid=m.group(1)
comments=requests.get(commentURL.format(newsid))
jd=json.loads(comments.text.strip(‘vardata=’))returnjd[‘result’][‘count’][‘total’]foriinrange(1,8):print(‘正在爬取第’+str(i)+’页……’)
newsurl=url.format(i)
newsary=parseListLinks(newsurl)
news_total.extend(newsary)print(‘抓取完毕’)
df=pandas.DataFrame(news_total)
df.to_excel(‘news.xlsx’)
仿制代码
仿制代码
importrequestsimportreimportjsonimporttimeimportxlwt#
#
#配置表格#不需要明白是干啥的#有下面4行代码就可以往表格写中文了#style=xlwt.XFStyle()
font=xlwt.Font()
font.name=’SimSun’style.font=font#创建一个表格w=xlwt.Workbook(encoding=’utf-8′)#添加个sheetws=w.add_sheet(‘sheet1′,cell_overwrite_ok=True)#当时写入表格到第row行row=1#
#写入表格头#ws.write(0,0,’content’)
ws.write(0,1,’userClientShow’)
ws.write(0,2,’creationTime’)
ws.write(0,3,’userLevelName’)
ws.write(0,4,’productColor’)
ws.write(0,5,’userLevelId’)
ws.write(0,6,’score’)
ws.write(0,7,’referenceName’)
ws.write(0,8,’referenceTime’)
ws.write(0,9,’isMobile’)
ws.write(0,10,’nickname’)#
#接受一个json对象#将内容写进表格#一次一页谈论#defwrite_json_to_xls(dat):globalrowforcommentindat[‘comments’]:
ws.write(row,0,comment[‘content’])
ws.write(row,1,comment[‘userClientShow’])
ws.write(row,2,comment[‘creationTime’])
ws.write(row,3,comment[‘userLevelName’])
ws.write(row,4,comment[‘productColor’])
ws.write(row,5,comment[‘userLevelId’])
ws.write(row,6,comment[‘score’])
ws.write(row,7,comment[‘referenceName’])
ws.write(row,8,comment[‘referenceTime’])
ws.write(row,9,comment[‘isMobile’])
ws.write(row,10,comment[‘nickname’])
row+=1#
#
#循环获取数据#
#foriinrange(1,10+1):
url=’https://club.jd.com/comment/productPageComments.action?productId=1475512465&score=0&sortType=5&page=%d&pageSize=100&isShadowSku=0&fold=’%itry:
json_req=requests.get(url)
dat=json_req.json()
write_json_to_xls(dat)print(u’写入一页数据’)exceptExceptionase:print(u’获取数据失败数据’,e)
time.sleep(0.5)#将数据存进表格w.save(‘result.xls’)
1、IT大王遵守相关法律法规,由于本站资源全部来源于网络程序/投稿,故资源量太大无法一一准确核实资源侵权的真实性;
2、出于传递信息之目的,故IT大王可能会误刊发损害或影响您的合法权益,请您积极与我们联系处理(所有内容不代表本站观点与立场);
3、因时间、精力有限,我们无法一一核实每一条消息的真实性,但我们会在发布之前尽最大努力来核实这些信息;
4、无论出于何种目的要求本站删除内容,您均需要提供根据国家版权局发布的示范格式
《要求删除或断开链接侵权网络内容的通知》:https://itdw.cn/ziliao/sfgs.pdf,
国家知识产权局《要求删除或断开链接侵权网络内容的通知》填写说明: http://www.ncac.gov.cn/chinacopyright/contents/12227/342400.shtml
未按照国家知识产权局格式通知一律不予处理;请按照此通知格式填写发至本站的邮箱 wl6@163.com