使用BeautifulSoup爬取药智标准网数据(更改)
来源:互联网 发布:网络存储器 编辑:程序博客网 时间:2024/05/22 03:50
#coding:utf-8import urllib2import bs4from bs4 import BeautifulSoupclass YZBZ(): def __init__(self): self.pageIndex = 1 self.user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6' self.headers = { 'User-Agent' : self.user_agent } def getHtml(self,pageIndex): try: url='http://db.yaozh.com/biaozhun?p='+ str(pageIndex) request=urllib2.Request(url,headers=self.headers) page=urllib2.urlopen(request) html=page.read() return html except urllib2.URLError,e: if hasattr(e,"reason"): print u"连接失败",e.reason return None def getItems(self): L=range(1,11) for pageIndex in L: html=self.getHtml(pageIndex) soup=BeautifulSoup(html) tr_list=soup.find_all("tr") #写入表格标题 if pageIndex==1: with open(r"D:\Python test\yaozhi_biaozhunqqq.txt","a+") as a: a.write((tr_list[0].get_text("|",strip=True).encode("utf-8")+"|"+"\n")) #写入表格内容 f=open(r"D:\Python test\yaozhi_biaozhunqqq.txt","a+") #主要是数据中有空白项,若不将空白进行替换数据项将无法对齐 for tr in tr_list[1:]: f.write('\n') for item in tr: if item not in ('',' ','\n'): if item.string==None: f.write("None"+"|") else: f.write(item.string.encode('utf-8')+'|') f.close()spider=YZBZ()spider.getItems()
小某说:
写过一篇关于药智网的博客,后来由于不会进行修改,便搁置了,没有进行详细的说明。再后来发现代码并不完善,在此重新写一篇来进行更正。
第一次的思路主要就是把数据爬下来直接写入没有进行筛选,没有想到空白的处理。
这次是先筛选后写入。先写入表格标题,没有空白处理直接写入就行。在处理表格内容时,遇到空白则写入“None”,否则读取并写入。这样代码变得简洁些。
0 0
- 使用BeautifulSoup爬取药智标准网数据(更改)
- 使用BeautifulSoup爬取药智标准网的数据
- python爬数据小试牛刀--beautifulSoup使用
- 使用beautifulsoup
- BeautifulSoup使用
- BeautifulSoup使用
- BeautifulSoup使用
- Python爬虫---提取数据(2)--beautifulsoup
- 大规模数据爬取(BeautifulSoup)
- Python 爬虫(以赛马数据为例)之使用BeautifulSoup进行Html解析
- 转载:使用 mechanize 和 BeautifulSoup 收集 Web 数据
- 使用urllib和BeautifulSoup怕取维基百科的数据
- Python 使用BeautifulSoup方式爬虫爬取数据
- (二)BeautifulSoup的基本了解使用
- BeautifulSoup使用一两则(不定期补充)
- Python爬虫(2)--BeautifulSoup的使用
- 使用DML语句更改数据
- 使用DML语句更改数据
- 弱散列映射表:WeakHashMap
- UDP和TCP通信机制(实现简单的数据发送与接收)
- 视觉感知特性 【1】人类视觉系统的信息处理机制的4个特性
- Android 设置禁止横屏失效解决方法
- 《leetCode》:Set Matrix Zeroes
- 使用BeautifulSoup爬取药智标准网数据(更改)
- 程序模拟分页系统的地址变换过程
- C语言中变量的属性(auto static register)
- BP神经网络——如何进行权值的初始化
- 1027. Colors in Mars (20)
- 响应式布局
- Android 添加手势操作
- 又一个11月悄然过去——致英语
- homerHEVC代码阅读(3)——基础结构之HVENC_Cfg