How to fix ROS/Python ModuleNotFoundError: No module named 'rosbag'

Problem

You want to run a Python script using the ROSBag format, but you get the following error:

Traceback (most recent call last):
  File "test.py", line 1, in <module>
    import rosbag
ModuleNotFoundError: No module named 'rosbag'

Solution

Most likely, you’re using ROS2. The rosbag module is part of ROS1 and not available in ROS2 - the direct replacement is called ros2bag, but you might need to adjust your code to use it.

Instead of

import rosbag

use

import ros2bag