使用python 对网页上的数据进行爬取

f=open('wangye0.txt','r',encoding='utf-8')
k=open('seq0.txt','w')
seq_list=[]
for line in f:
    if '<TD vAlign=center align=left width="55%" bgcolor="#FFFFFF">&nbsp;<a name="target_sequence_1"' in line:
        seq_list.append(line)
        k.write(line)
print(len(seq_list))
'''f=open('seq.txt','r')
k=open('p450family.txt','w')
ff=open('xx.txt','r')
list=[]
for line in ff:
    list.append(line.replace('\n',''))#把这个从数据库blast反馈回来的文章里的链接找出来 然后自己记录下来
num=0
for line in f:
    k.write(list[num]+'\t\t\t'+'http://p450.riceblast.snu.ac.kr/'+line[115:line.find('">P450')]+'\t\t\t'+line[(line.find('">P450')+7):line.find('</a></b>')]+'\n')
    num+=1
    #print(line)'''

'''import requests       #导入requests包
f=open('huiji.txt','w',encoding='utf-8')
k=open('p450family.txt','r')
h=open('p450name&url.txt','w')
for line in k:
    url=line.split('\t\t\t')[1]
    #print(url)
    strhtml = requests.get(url).text  #Get方式获取网页数据 这个.text很重要 加了这个就可以以字符的形式进行比对
    #print(strhtml)
    a=strhtml.find('<td width="70">&nbsp')+21#做这些工作前先自己在网页上查找好找到你所需要的东西在哪 
    # 以什么样的形式展现在你面前 了解清楚后 再去查找如何处理。这里是HMTL的文本 而且反馈的信息就在里面以字符的形式展现
    #所以直接使用find()函数 找到这个字符的position 然后直接拆分得到CYPname
    b=a+7
    #print(strhtml[a:b])
    h.write(strhtml[a:b])'''

f=open('p450name&url.txt','r')
k=open('p450family.txt','r')
w=open('final_P450name.txt','w')
a=f.read()
b=[];c=[]
num=0
for i in range(173):
    b.append(a[num:num+7])
    num+=7


for i in b:
    s="".join(filter(str.isalnum, i))#此代码是去掉非数字和字母的代码
    c.append(s)

num=0
for line in k:
    x=line.split('\t\t\t')
    w.write(c[num]+'\t'+x[0]+'\t'+x[2]+'\n')
    num+=1

需要在浏览器里找到相应的字节 然后进行数据清洗和整理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值