[파이썬] requests-html 사용자 지정 헤더 설정

When making HTTP requests in Python, the requests library is a popular choice. However, for more advanced use cases, you might want to customize the headers of your requests. This can be done easily with the requests-html library, an extension of requests that provides additional features for parsing HTML content.

In this blog post, we will explore how to set custom headers using requests-html in Python.

Installation

Before we start, make sure you have requests-html installed. You can do this by running the following command:

pip install requests-html

Once installed, we can import the necessary modules and get started.

Setting Custom Headers

To set custom headers using requests-html, we need to create an instance of HTMLSession and pass the desired headers as a dictionary to the headers parameter.

Here’s an example that demonstrates how to set a custom user-agent header:

from requests_html import HTMLSession

# Create an instance of HTMLSession
session = HTMLSession()

# Define custom headers
headers = {
    'User-Agent': 'My Custom User Agent'
}

# Set the headers for the session
session.headers.update(headers)

# Make a request using the session
response = session.get('https://www.example.com')

# Print the response content
print(response.html)

In the above example, we imported HTMLSession from requests_html and created an instance called session. We then defined a dictionary called headers, with the key being 'User-Agent' and the value being 'My Custom User Agent'. We used the update method on the headers attribute of the session to set the custom headers.

Finally, we made an HTTP GET request using the get method of the session, passing the desired URL as an argument. The response is printed to the console.

Conclusion

Setting custom headers in requests-html is straightforward and allows you to customize your HTTP requests according to your needs. Whether you want to change the user-agent or any other aspect of the request headers, requests-html provides an easy way to do so.

Remember to explore the official requests-html documentation for more information on its capabilities and additional features that can enhance your web scraping and parsing tasks.