温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python如何自动化登录网站并爬取商品数据

发布时间:2021-11-25 14:07:57 来源:亿速云 阅读:590 作者:小新 栏目:大数据

这篇文章主要为大家展示了“Python如何自动化登录网站并爬取商品数据”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Python如何自动化登录网站并爬取商品数据”这篇文章吧。

适合阅读人群:

  • selenium工具的使用

  • 结构化的数据解析

  • csv数据保存

环境介绍:

  • python 3.6

  • pycharm

  • selenium

  • csv

  • time

selenium

起初是用来做网页测试(性能\并发),可以直接获取到浏览器渲染之后的数据(不用解密)

用户行为和你代码逻辑需要结合(你怎么操作浏览器)

谷歌驱动器

Python如何自动化登录网站并爬取商品数据

受害目标

https://www.jd.com/

部分代码

from selenium import webdriver
import time
import csv

def parse_product():
    """解析商品数据"""
    lis = driver.find_elements_by_css_selector('.gl-warp.clearfix>li')
    for li in lis:
        try:
            name = li.find_element_by_css_selector('.p-name a em').text   # 商品的名字
            price = li.find_element_by_css_selector('.p-price strong i').text + '元'  # 商品的价格
            info = li.find_element_by_css_selector('.p-commit strong a').text   # 商品的评价数
            title = li.find_element_by_css_selector('.J_im_icon a').get_attribute('title')   # 商品的店铺
            print(name, price, info, title)
            with open('data.csv', mode='a', encoding='utf-8', newline='') as f:
                f.write()
                csv_write = csv.writer(f, delimiter=',')
                csv_write.writerow([name, price, info, title])
        except Exception as e:
            print(e)

def get_next():
    """找到下一页标签, 点击"""
    driver.find_element_by_css_selector('#J_bottomPage > span.p-num > a.pn-next > em').click()
    driver.implicitly_wait(10)

keyword = input('请输入你想要的搜索商品的关键字:')
driver = webdriver.Chrome()  # 创建一个浏览器对象
driver.get('https://www.jd.com/')
get_product(keyword)

for page in range(1, 101):
    drop_down()
    parse_product()
    get_next()

运行代码得到数据

Python如何自动化登录网站并爬取商品数据

以上是“Python如何自动化登录网站并爬取商品数据”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI