Is there a reason you want to use Python even though vBulletin 5 is created using PHP?
Using PHP you can read the Excel file and iterate through each row and then insert the thread.
PHP Code:
// Path to the vBulletin 5 folder.
// '.' indicates current directory where the .htaccess file resides.
$vbpath = '.';
define('CSRF_PROTECTION', false);
require_once($vbpath . '/includes/vb5/autoloader.php');
vB5_Autoloader::register($vbpath);
vB5_Frontend_Application::init('config.php');
$api = Api_InterfaceAbstract::instance();
$thread = $api->callApi('content_text', 'add', [
'data' => [
'rawtext' => 'Content of the thread.',
'title' => 'Title of the thread.',
'parentid' => 3, // ID of the forum section (or node as they call it in vBulletin 5)
'userid' => 1 // ID of the user to post the thread as
],
'options' => [
'nl2br' => true
]
]);
var_dump($thread);
/*
Integer if created successfully, contains the thread id.
int(15)
Array if errors.
array(1) { [0]=> array(1) { [0]=> string(19) "humanverify_missing" } }
*/