2016-07-02 7 views
0

に書き込んでください。希望の値に達するのを十分に試みた後、.csvファイルで再びクラッシュします。csvファイルwhith beatutifulスープ

.csvで得られたリンクを下に書く必要があります。しかし、私はこれだけ複雑です。

お手伝いできますか?

これは、非常に単純であるファイルを開くと、ちょうどあなたが1行に1つを置くために改行を追加する反復としてあなたが見つけるそれぞれのhrefを書くあなた

from BeautifulSoup import BeautifulSoup 
import urllib2 
import re 
import time 

count = 1 
while (count < 99): 

     html_page = urllib2.urlopen('http://www.gxxxxxar/BUxxxR/H=1;OR=5;ST=;LxxTA_ARTICxxxS_PAGENUMBER='+str(count)+';/Disxxxxxxa.aspx',timeout=30) 
     soup = BeautifulSoup(html_page) 
     for link in soup.findAll('a', attrs={'href': re.compile("^http://www.grzzzzo.zzzcz.azzz/PROzzzCTO/PROD_ID")}): 
       print link.get('href') 
      print(count) 
     count=count+1 
     time.sleep(10) 
print "good bye" 

答えて

1

ありがとうございます。あなたはおそらく今エラーが出るのはなぜ

あなたがbs4を使用する必要があるときにメンテナンスされていないとdeprecated Beautifulsoup3を使用しています:

from bs4 import BeautifulSoup 
import urllib2 
import time 
url = "http://www.gxxxxxar/BUxxxR/H=1;OR=5;ST=;LxxTA_ARTICxxxS_PAGENUMBER={};/Disxxxxxxa.aspx" 
with open("links.txt"," w") as out: 
    for i in range(1, 99): 
      html_page = urllib2.urlopen(url.format(i), timeout=30) 
      soup = BeautifulSoup(html_page) 
      for link in soup.select("a[href^=http://www.grzzzzo.zzzcz.azzz/PROzzzCTO/PROD_ID]"): 
       out.write(link["href"] + "\n") 
      time.sleep(10) 
print "good bye" 

私はあなたに同じロジックを使用していますcss selectorと正規表現の論理を置き換え、すべて見つけますあなたがあなたの中で何をしているのかは、範囲もhttp://www.grzzzzo.zzzcz.azzz/PROzzzCTO/PROD_ID]"で始まるhrefです。

+1

あなたは狡猾です。ありがとうございました –