2016-12-31 2 views
0

http://megabuy.vn/Default.aspx에서 제품 정보를 긁어 내고 싶습니다.javascript 태그에서 태그를 긁는 방법은 무엇입니까?

내 솔루션은 웹 사이트 구조에 따라 웹 사이트를 긁는 것입니다. 따라서 처음에는 하위 카테고리로 이동하기 전에 일반 카테고리에 대한 모든 링크를 긁어 내야하고 각 특정 제품으로 이동해야합니다.

내가 문제처럼 모든 링크를 일반 범주를 근근이 살아가고 있습니다

  • 이 헛 수 티엣 이중 반은 오전
    • 할 다 배설물 냐 BEP

    등 ...

    문제는이 링크가 자바 스크립트 태그에 있다고 생각합니다. 여기

    내 코드입니다 : 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 
    
    당신이 클래스에 의해 태그를 얻을 수없는 이유

    이유는 나는 결과를 얻었다

    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) 
    

    태그의 클래스가 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 속성이 없습니다.

    관련 문제