V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
joyc
V2EX  ›  Python

新手求助: beautifulSoup4 .select('.bnrName') 取不到到 text 文字

  •  
  •   joyc · 2017-05-13 09:44:53 +08:00 · 2324 次点击
    这是一个创建于 2540 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景:
    Python3 下使用 bs4 的 select 去获取 ZOZO首页上方的 coupon 信息中店铺名字。

    问题:
    发现自己找不到他的店铺名字在写在什么地方,不知道怎么取,前端 js 不懂,请教诸位解答。谢谢。

    如下截图中是想要获取的文字,发现查看源码中却没有文字。
    Imgur

    <div class="couponInfo">
    	<p class="bnrName">说好的文字呢。。。</p>
    	<p class="bnrText"></p>
    </div>
    
    5 条回复    2017-05-15 20:36:28 +08:00
    joyc
        1
    joyc  
    OP
       2017-05-13 10:04:14 +08:00
    自己的代码如下:

    ```
    import requests, bs4

    shopName = 'BEAUTY&YOUTH'
    url = 'http://zozo.jp/'

    def getZozoCoupon():
    res = requests.get(url, headers={"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36"})
    res.raise_for_status()
    soup = bs4.BeautifulSoup(res.text, 'html.parser')
    elems = soup.select('.bnrName')
    return elems[0].text.strip()
    ```
    Kilerd
        2
    Kilerd  
       2017-05-13 10:54:42 +08:00
    证明是 js 生成的

    建议使用无头浏览器爬
    joyc
        3
    joyc  
    OP
       2017-05-13 15:04:55 +08:00
    @Kilerd 谢谢,意思是要安装 PhantomJS 这个 来模拟浏览器取数据是吧,我查查,谢谢。
    Pinwheel
        4
    Pinwheel  
       2017-05-14 13:48:55 +08:00
    分析一下网络请求直接走它取得这个数据的接口吧。
    joyc
        5
    joyc  
    OP
       2017-05-15 20:36:28 +08:00
    @Pinwheel 谢谢思路,用 headless 浏览器解决了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5561 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 03:32 · PVG 11:32 · LAX 20:32 · JFK 23:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.