semvec/pypi-packages huggingface dataset:
linkedin-auto-scraper 0.2.1
A tool to scrape infomation of people in a particular based on their job title and location
Requires Python: >=3.10,<4.0


# LinkedIn Auto Scraper

LinkedIn Auto Scraper is a command-line application designed to scrape cleaned information from LinkedIn profiles based on job titles and locations. The app offers two main commands: `login` and `scrape`. Once you've logged in using the `login` command, you can perform continuous scraping without the need to log in again, thanks to the authentication caching feature.

## Table of Contents

-   [Installation](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#installation)
-   [Usage](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#usage)
    -   [Login](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#login)
    -   [Scrape](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#scrape)
-   [Contributing](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#contributing)
-   [License](https://chat.openai.com/c/b42c6a84-5afc-4a4e-a9ae-23be4b649973#license)

## Installation

1.  Ensure you have Python 3.x installed.
    
2.  Clone this repository:

-   `git clone https://github.com/your-username/linkedin-auto-scraper.git` 
    
-   Navigate to the project directory: 
    
-   `cd linkedin-auto-scraper` 
    
-   Install the required dependencies  

	 `pip install -r requirements.txt` 
    

## Usage

### Login

To use the app, you need to log in first. This step is required for authentication purposes. Run the following command:

bash

`linkedin-auto-scraper login` 

This command lets you log in to your LinkedIn account. Follow the prompts to provide your LinkedIn credentials. Your authentication will be cached to allow continuous scraping without repeated logins.

### Scrape

Once you're logged in, you can start scraping LinkedIn profiles based on job titles and locations. Run the following command:

bash

`linkedin-auto-scraper scrape` 

By default, the app will search for profiles related to the HR field. You can customize the search by using the following options:

-   `--search` (`-s`): Specify the search parameter (default: "hr").
-   `--location` (`-l`): Use it to search for profiles in a specific location (default: None).
-   `--excel`: This option is required and indicates whether to generate an Excel file with the scraped data (default: no-excel).

Example usage:

bash

`linkedin-auto-scraper scrape --search software engineer --location San Francisco --excel` 

Follow the prompts to enter the desired job title and location. The app will scrape and display cleaned information from LinkedIn profiles matching your criteria.

## Contributing

Contributions are welcome! If you'd like to contribute to the project, please follow these steps:

1.  Fork the repository.
2.  Create a new branch for your feature/bugfix: `git checkout -b feature-name`
3.  Commit your changes: `git commit -m "Description of changes"`
4.  Push to the branch: `git push origin feature-name`
5.  Create a pull request.

## License

This project is licensed under the [MIT License]
Assistant-Ostap 0.0.1
Your personal assistant Ostap
Requires Python: >=3.6

<img src="https://github.com/blackcater/blackcater/raw/main/images/Hi.gif" height="32"/></h1>
<a href="https://git.io/typing-svg"><img src="https://readme-typing-svg.demolab.com?font=Fira+Code&pause=1000&width=600&height=60&lines=Hi+there%2C+I'm+your+personal+assistant+Ostap" alt="Typing SVG" /></a>

<img src="https://img.shields.io/badge/made%20by-GoIT Team 3-blue.svg" >


How to install me
``pip install package``

What I can do
* Create a contact book for you by command ``add``
* Tell us who has a birthday in the coming N days ``showbd N`` (N - numbers of days)
* Create notes for you
* And many intresting things

You can find out the full list of my capabilities by installing me and entering the command ``help``
hzexcel 0.0.13
提供常用django、Python后端的excel导入导出功能
Requires Python: >=3.7

## **1概述**

# 1.1可根据配置、参数提供校验和导入导出excel功能

# 1.2贡献者：深圳市汉卓软件

# 2.功能详细说明(API列表)：
# (1)export_excel(data, data_type{可选},file_name{可选} , rules{可选}, freeze{可选})
**导出excel** 。	   返回参数：成功时：返回excel 文件；失败时状态码为非200，返回错误信息。

# (2)import_excel(file, check_dict{可选},type_dict{可选})
**导入excel并根据规则校验**。返回参数：成功时：返回{"status":200,"msg":"校验成功！","data":[{"Name":"Alice","Age":25,"City":"New York"},{"Name":"Bob","Age":32,"City":"Los Angeles"},{"Name":"Charlie","Age":22,"City":"London"}]}；失败时，返回的状态码为非200，错误信息例子如下："缺少列名： 'City';<br>"


### 2.应用说明：
#### (1)export_excel参数说明
data:必选数据，有两种不同的数据结构可选，一种是每一行是一条数据，如：{'测试':['Alice','Bob','Charlie'],'Name':['Alice','Bob','Charlie'],'Age':[25,32,22],'City':['New York','Los Angeles','London']}
另一种是类似 DataFrame 的数据格式，比如：data:{"data":[['Alice',25,'New York'],['Bob',32,'Los Angeles'],['Charlie',22,'London']],"columns":['Name','Age','City']}

data_type: 可选参数，默认为1。可选值为 1 或 2。当值为 1 时，表示每一行是一条数据；当值为 2 时，表示使用 DataFrame 类型的数据格式。
file_name: 可选参数，文件名称，比如 '默认名称.xlsx'。

rules: 可选参数，导出规则，包括表头设置和数据验证下拉列表等。

freeze：可选参数，表示从第几行第几列开始冻结，比如值为”A2 ”其中2表示第从第2行（行索引从1开始）， A 表示第一列。

#### (2)import_excel参数说明

file :必选参数，二进制excel文件，一般从前端传来的 self.request.FILES['file'] 中获取
check_dict:可选参数，校验的对象 ，其中header表示必须必须有那些列，content表示那些列 必填、而且指定类型，

type_dict:可选参数，
判断非表头的数据类型，可传入配置设置可校验类型，不传时默认值如下{
            "str": str,
            "int": int,
            "float": float,
            "bool": bool,
            "datetime": pd.to_datetime,
        }

## 3.应用实例
### （1）export_excel例子：
from hzexcel import export_excel
rules = {
    "head": {"Font": {"bold": True, "color": "FF0000", "size": 14}},
    "validation": [
        {
            "column_name": "Name",
            "type": "list",
            "formula1": '"$ 价格,A 可获得性,P 包装,P 性能,E 易用性,A 保证,L 生命周期成本,S 社会影响力"',
            "showDropDown": False,
        }
    ],
}
data = {
    '测试': ['Alice', 'Bob', 'Charlie'],
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 32, 22],
    'City': ['New York', 'Los Angeles', 'London']
}
return export_excel(data, 2, '默认名称.xlsx', rules, "A2")


## （2）export_excel例子：
from hzexcel import import_excel
self.request = request
file = self.request.FILES['file']
check_dict = {
    "header": ['Name', 'Age', 'City'],
    "content": {'Name': 'str', 'City': 'str'}
}

rs0 = import_excel(file, check_dict)
rs = json.loads(rs0)
if rs['status']:
    #  通过验证
    # 将文件中的数据转为数据 ，批量插入到数据库
    if rs['status'] == 200:
        return Response(rs, status=status.HTTP_200_OK)
    else:
        return Response(f"{rs['msg']}", status=status.HTTP_400_BAD_REQUEST)
else:
    return Response(f"校验数据时出错", status=status.HTTP_400_BAD_REQUEST)