python——利用python通过浏览器打开博客页面
2017-03-02 12:31
176 查看
自动打开浏览器,并打开指定的网页内容
PS:本程序缺陷, 只能打开一页的博客内容,翻页内容待扩展
修改一下代码
实现如下功能:
统计一下个人名下博客文章的数量,并将其按照访问顺序从小到大排序
下面的是一个小功能
PS:本程序缺陷, 只能打开一页的博客内容,翻页内容待扩展
# coding:utf-8 import webbrowser as web import os import time import random import urllib2 from bs4 import BeautifulSoup def getPage(): #伪装成浏览器登陆,获取网页源代码 url = 'http://blog.csdn.net/qiqiyingse?viewmode=contents' baseurl='http://blog.csdn.net' urlList=[] headers = {'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'} req = urllib2.Request(url=url,headers=headers) try: html = urllib2.urlopen(req).read() except urllib2.HTTPError,e: print e.code print e.reason #将网页内容传给BeautifulSoup解析 page = BeautifulSoup(html,'lxml') items = page.find_all('div',class_ ='list_item list_view')#找到每一个文章item for item in items: content=item.find('a') url=content.get('href')#找到每一个文章的连接 url=baseurl+url#拼接成可访问的地址 urlList.append(url) return urlList urls=getPage()#获取到博客地址的url列表 i=0; while i<len(urls):#根据文章列表的url决定循环次数,也是打开的网页个数 webs.open_new_tab(urls[i])#通过默认浏览器打开网页 i=i+1 time.sleep(1)#打开后,暂停1s,防止电脑卡死 else: time.sleep(2) os.system('taskkill /f /I.M Chrome.exe')#全部打开一遍之后,将浏览器关闭,防止进程过多,电脑死掉 print u"close broswer %d times "%(j)
修改一下代码
实现如下功能:
统计一下个人名下博客文章的数量,并将其按照访问顺序从小到大排序
#coding:utf-8 import urllib2,re,time,random,os from bs4 import BeautifulSoup import webbrowser as web import sys reload(sys) sys.setdefaultencoding('utf-8') def getPage(): #伪装成浏览器登陆,获取网页源代码 url = 'http://blog.csdn.net/qiqiyingse?viewmode=contents' baseurl='http://blog.csdn.net' contentList=[] sortlist=[] sortlist1=[] urlList=[] headers = {'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'} req = urllib2.Request(url=url,headers=headers) try: html = urllib2.urlopen(req).read() except urllib2.HTTPError,e: print e.code print e.reason fd=open('counter.txt','w') page = BeautifulSoup(html,'lxml') items = page.find_all('div',class_ ='list_item list_view') print u'总共有文章%d 篇' % len(items) for item in items: aa={} content=item.find('a') contemtUrl=baseurl+content.get('href') #print contemtUrl read_time=item.find('span',class_ ='link_view') readtime=str(read_time.text.strip()) #print readtime readtimeNumber = int(filter(str.isdigit, readtime)) #print readtimeNumber sortlist1.append(readtimeNumber) #time.sleep(2) aa['indexs']=readtimeNumber aa['content']=content.text.strip() aa['read_time']=readtime aa['contemtUrl']=contemtUrl sortlist.append(aa) sortlist1.sort() print sortlist1 for i in sortlist1: for a in sortlist: if int(i) == int(a['indexs']): totalcontent=a['content']+'\t'+a['read_time']+'\t'+a['contemtUrl'] print totalcontent fd.write(totalcontent) fd.write('\n') urlList.append(a['contemtUrl']) contentList.append(totalcontent) fd.close() return urlList urls=getPage()
下面的是一个小功能
count=random.randint(3,10) j=0 while j< count: for i in range(5): web.open_new_tb(urls[i]) time.sleep(1) os.system('taskkill /f /IM Chrome.exe') j = j+1
相关文章推荐
- php页面判断是 iphone还是andriod的浏览器&通过 URL types在浏览器打开app
- php页面判断是 iphone还是andriod的浏览器&通过 URL types在浏览器打开app(转)
- Python学习打开页面,关闭浏览器
- 通过手机浏览器打开APP或者跳转到下载页面.md
- 点击打开自己博客地址通过默认浏览器
- 使用selenium+python;在页面A点击一个按钮跳转到页面B,页面A没有关闭,浏览器打开了一个B,切换窗口定位页面B的元素
- 通过js判断打开页面的手机浏览器类型
- Python 2.7_爬取CSDN单页面利用正则提取博客文章及url_20170114
- 程序中通过IE或默认的浏览器打开指定的页面
- python简单爬取页面信息及实现打开、关闭浏览器
- 通过js就可以判断当前页面是在什么浏览器打开的
- Python利用selenium模拟浏览器抓取异步加载等难爬页面信息
- (利用DOM)在新打开的页面点击关闭当前浏览器窗口
- 利用noVNC通过iframe在页面上打开虚拟机时键盘聚焦问题
- js 通过post方式打开页面 利用html5本地存储获取数据
- Android通过浏览器打开app页面并且传递值
- php页面判断是 iphone还是andriod的浏览器&通过 URL types在浏览器打开app
- 通过手机浏览器打开APP或者跳转到下载页面.md
- php页面判断是 iphone还是andriod的浏览器&通过 URL types在浏览器打开app
- 通过浏览器判断显示什么页面