selenium_采集药品数据
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门
https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6EmUbbW&id=564564604865
数据源
http://118.114.237.85:8081/searchbio.aspx
采集内容字段有的对不整齐,
def Get_one_table()函数需要修改
# -*- coding: utf-8 -*-
"""
Spyder Editor
采集思路:采一页,保存一页
This is a temporary script file.
"""
import requests,bs4,csv,time,selenium
from selenium import webdriver
list_allContent=[] site="http://piqianfa.scsyjs.org/"
site1="http://118.114.237.85:8081/searchbio.aspx"
charset="gb2312"
browser=webdriver.Firefox()
browser.get(site1)
pages=196 #这种方式采集下来很粗糙,容易错位
def Get_one_table():
elems=browser.find_elements_by_tag_name("tr")
content=elems[0].text
list_content=content.split("\n")
#列表内个数
num=len(list_content)
list_content2=list_content[3:num]
list_allContent.append(list_content2) return list_content2
'''
list_content2[2]
Out[13]: '批签蜀检201600220 人血白蛋白 20% 25ml 5g/瓶 201601A010 26931瓶 2021年1月22日
成都蓉生药业有限责任公司 该批制品符合规定,判定合格 2016-05-04'
''' def Write_table_to_csv(fileName,list_tableContent):
#对列表格式修改,字符串写入的格式不对
list_tableContent1=[i.split(" ") for i in list_tableContent]
file=open(fileName,'w',newline='')
writer1=csv.writer(file)
writer1.writerows(list_tableContent1)
file.close() def Click_next_page():
linkElem=browser.find_element_by_link_text("下一页")
linkElem.click() def Get_fileName():
pass for i in range(1,pages+1):
list_tableContent=Get_one_table()
Click_next_page()
fileName=str(i)+".csv"
Write_table_to_csv(fileName,list_tableContent)
def Get_one_table()函数需要修改
# -*- coding: utf-8 -*-
"""
Created on Fri May 6 10:24:18 2016 @author: Administrator
"""
import requests,bs4,csv,time,selenium
from selenium import webdriver
site1="http://118.114.237.85:8081/searchbio.aspx"
charset="gb2312"
browser=webdriver.Firefox()
browser.get(site1) elems=browser.find_elements_by_class_name("tb")
elems1= elems[1:]
content=[i.text for i in elems1] '''
elems=browser.find_elements_by_class_name("tr")
elems
Out[33]: [] elems=browser.find_elements_by_class_name("tb")
elems[1].text
Out[25]: '批签蜀检201600221' elems[2].text
Out[26]: '静注人免疫球蛋白(pH4)' elems[3].text
Out[27]: '2.5g(5%,50ml)/瓶' elems[4].text
Out[28]: '201602005' content
Out[60]:
['批签蜀检201600221',
'静注人免疫球蛋白(pH4)',
'2.5g(5%,50ml)/瓶',
'201602005',
'16020瓶',
'2019年1月',
'华兰生物工程重庆有限公司',
'该批制品符合规定,判定合格',
'2016-05-04',
'批签蜀检201600220',
'人血白蛋白',
'20% 25ml 5g/瓶',
'批签蜀检201600202',
'静注人免疫球蛋白(pH4)',
'2.5g/瓶(5%,50ml)',
'201511154B',
'16664瓶',
'2018年11月16日',
'四川远大蜀阳药业股份有限公司',
'该批制品符合规定,判定合格',
'2016-04-29'] len(elems1)
Out[61]: 180 ''' '''
content=elems[0].text
list_content=content.split("\n")
#列表内个数
num=len(list_content)
list_content2=list_content[3:num]
'''
selenium_采集药品数据的更多相关文章
- selenium_采集药品数据2_采集所有表格
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- selenium_采集药品数据1_采集第一页表格
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子)
第一次接触HtmlAgilityPack是在5年前,一些意外,让我从技术部门临时调到销售部门,负责建立一些流程和寻找潜在客户,最后在阿里巴巴找到了很多客户信息,非常全面,刚开始是手动复制到Excel, ...
- Gobblin采集kafka数据
作者:Syn良子 出处:http://www.cnblogs.com/cssdongl 转载请注明出处 找时间记录一下利用Gobblin采集kafka数据的过程,话不多说,进入正题 一.Gobblin ...
- API例子:用Python驱动Firefox采集网页数据
1,引言 本文讲解怎样用Python驱动Firefox浏览器写一个简易的网页数据采集器.开源Python即时网络爬虫项目将与Scrapy(基于twisted的异步网络框架)集成,所以本例将使用Scra ...
- Performance Monitor采集性能数据
Performance Monitor采集性能数据 Windows本身为我们提供了很多好用的性能分析工具,大家日常都使用过资源管理器,在里面能即时直观的看到CPU占用率.物理内存使用量等信息.此外新系 ...
- 【Android 应用开发】分析各种Android设备屏幕分辨率与适配 - 使用大量真实安卓设备采集真实数据统计
.主要是为了总结一下 对这些概念有个直观的认识; . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/198 ...
- Android 音视频开发(四):使用 Camera API 采集视频数据
本文主要将的是:使用 Camera API 采集视频数据并保存到文件,分别使用 SurfaceView.TextureView 来预览 Camera 数据,取到 NV21 的数据回调. 注: 需要权限 ...
- 分析各种Android设备屏幕分辨率与适配 - 使用大量真实安卓设备采集真实数据统计
一. 数据采集 源码GitHub地址 : -- SSH : git@github.com:han1202012/DisplayTest.git; -- HTTP : https://github.co ...
随机推荐
- <<梦断代码>>阅读笔记二
这是第二篇读书笔记,这本书我已经读了有一大半了,感觉书中所描述的人都是疯子,一群有创造力,却又耐得住寂寞的疯子. 我从书中发现几点我比较感兴趣的内容. 第一个,乐高之梦.将程序用乐高积木一样拼接起来. ...
- “数学口袋精灵”App的第三个Sprint计划----开发日记(第十一天12.17)
项目进度: 基本完成一个小游戏,游戏具有:随机产生算式,判断对错功能.通过轻快的背景音乐,音效,给玩家提供一个良好的氛围. 任务分配: 冯美欣:设计"数学口袋精灵"App图标.整 ...
- scipy线性模块liner(linalg)
#liner import numpy as np from scipy import linalg as lg arr=np.array([[1,1],[0,1]]) matr=np.mat('[1 ...
- 常见的HTTP报头(头参数)
本内容摘抄自<RESTful WebServices> 中文译本附录C '常见的HTTP报头'. 原文作者:Leonard Ricbardson & Sam Ruby 翻译:徐涵. ...
- spring cloud实战与思考(一) spring config全局配置方案设计
“spring cloud”的配置中心工具“spring cloud config”提供了分布式系统配置文件集中管理解决方案.该工具功能强大,实现也很简单.网上可以搜索到很多开发教程和用例.本文并不是 ...
- SOC四大弱点分析
导读 今年的年度安全运营中心(SOC)调查中,SANS研究所指出了4个最为常见的SOC弱点.这些弱点的根源可被追溯到我们非常熟悉的人.过程.适度规划和技术实现上.下面我们就来看看SOC的四大弱点究竟是 ...
- [IOI2018]狼人——kruskal重构树+可持久化线段树
题目链接: IOI2018werewolf 题目大意:给出一张$n$个点$m$条边的无向图,点和边可重复经过,一个狼人初始为人形,有$q$次询问,每次询问要求人形态只能处于编号不小于$L$的点,狼形态 ...
- python 随机数模块 -- random
一.概述 这个模块实现的伪随机数生成器. 对于整数,从区间选取.对于序列,随机元素. 在实线的,有功能来计算均匀分布,正态分布(高斯) ,对数正态分布,负指数,γ和β分布.对于生成的角度分布,冯·米塞 ...
- Codeforces Round #411 div 2 D. Minimum number of steps
D. Minimum number of steps time limit per test 1 second memory limit per test 256 megabytes input st ...
- volatile的实现原理与应用
Java代码在编译后会变成Java字节码,字节码被类加载器加载到JVM里,JVM执行字节码,最终需要转化为汇编指令在CPU上执行,Java中所使用的并发机制依赖于JVM的实现和CPU的指令. vola ...