2016-12-31 5 views
0

http://megabuy.vn/Default.aspxから、製品情報をスクラップしたいと思います。javascriptタグの下にあるタグを削るには?

私の解決方法は、ウェブサイトの構造に従ってウェブサイトを削ることです。だから最初は、一般カテゴリについてのすべてのリンクをスクラップしてから、より細かいサブカテゴリに移動してから、それぞれの特定の製品に移動しなければなりません。

私はトラブルのような一般的なカテゴリのすべてのリンクをこする持っている:ファンティエットバイヴァンフォン

  • が小屋も

    • が...

      をダ糞ニャチャンBEP

    などを行うのですが

    私は問題は、これらのリンクがJavaスクリプトタグの下にあることだと思います。ここで

    は私のコードです:

    from bs4 import BeautifulSoup 
    import requests 
    import re 
    def web_scrape(url): 
        web_connect = requests.get(url) 
        text = web_connect.text 
        soup = BeautifulSoup(text,"html.parser") 
        return soup 
    homepage = web_scrape("http://megabuy.vn/Default.aspx") 
    listgianhang = homepage.findAll("a", class_=re.compile("ContentPlaceholder")) 
    len(listgianhang) 
    

    私はその結果得た:0

  • +0

    ブラウザのページ構造を見て、リンクがにネストされていることを確認しました。その対処方法を知りたいのですか? – clearlight

    答えて

    0
    import requests, bs4, re 
    
    r = requests.get('http://megabuy.vn/Default.aspx') 
    
    soup = bs4.BeautifulSoup(r.text, 'lxml') 
    table = soup.find(id='ctl00_ContentPlaceHolder1_TopMenu1_dlMenu') 
    for a in table('a',href=re.compile(r'^http')): 
        link = a.get('href') 
        text = a.text 
        print(link, text) 
    

    アウト:

    http://megabuy.vn/gian-hang/thiet-bi-van-phong THIẾT BỊ VĂN PHÒNG 
    http://megabuy.vn/gian-hang/may-fax Máy Fax 
    http://megabuy.vn/gian-hang/may-fax/hsx/Panasonic Panasonic 
    http://megabuy.vn/gian-hang/may-chieu-man-chieu-phu-kien Máy chiếu Màn chiếu Phụ kiện 
    http://megabuy.vn/gian-hang/may-chieu-projector Máy chiếu projector 
    http://megabuy.vn/gian-hang/may-chieu-projector/hsx/Optoma Optoma 
    http://megabuy.vn/gian-hang/may-chieu-projector/hsx/Sony Sony 
    http://megabuy.vn/gian-hang/may-chieu-projector/hsx/ViewSonic ViewSonic 
    http://megabuy.vn/gian-hang/may-chieu-man-chieu-phu-kien Xem thêm 
    http://megabuy.vn/gian-hang/may-photocopy Máy photocopy 
    http://megabuy.vn/gian-hang/may-photocopy- Máy photocopy 
    http://megabuy.vn/gian-hang/may-photocopy-/hsx/Canon Canon 
    http://megabuy.vn/gian-hang/may-photocopy-/hsx/Ricoh Ricoh 
    

    あなたはクラスによってタグを得ることができない理由があるのタグのクラスはJavaScriptによって生成され、生のHTMLコードは次のようになります:

       <a href="http://megabuy.vn/gian-hang/thiet-bi-van-phong" style="text-decoration:none;"> 
           <h2> 
           THIẾT BỊ VĂN PHÒNG 
           </h2> 
    

    実際のコードにはclass属性が含まれていません。

    関連する問題