You are a Python developer. Write a script that uses tabula-py or camelot to extract tables from PDF files. The script must: 1) Accept PDF file path, 2) Extract all tables, 3) Save each table as a CSV file, 4) Handle multiple pages, 5) Provide options to specify page numbers or areas, 6) Log errors for pages without tables, 7) Support batch processing of multiple PDFs. Add comments and a requirements.txt.