Exemplo n.º 1
0
    def handle(self, *args, **kwargs):
        fake = Faker("ru_RU")
        course_list = (
            "Python",
            "Python Adv",
            "Java",
            "Java Adv",
            "C",
            "C++",
            "C#",
            "PHP",
            "PHP Adv",
            "FrontEnd",
            "BackEnd",
            "DevOps",
        )
        for _ in range(2):
            course = choice(course_list)
            group_name = f"Group_{randint(1, 9999)}"
            group = Group.objects.create(course=course, group_name=group_name)
            lecturer = Lecturer.objects.create(
                first_name=fake.unique.first_name(),
                last_name=fake.unique.last_name(),
                email=fake.ascii_free_email())
            lecturer.save()
            group.teachers.add(lecturer)
            for _ in range(10):
                student = Student.objects.create(
                    first_name=fake.unique.first_name(),
                    last_name=fake.unique.last_name(),
                    email=fake.ascii_free_email())

                student.save()
                group.students.add(student)
            group.save()
Exemplo n.º 2
0
class Command(BaseCommand):
    def __init__(self):
        self.fake = Faker('pt_BR')

    def add_arguments(self, parser):
        parser.add_argument('-n',
                            type=int,
                            help='how many users you want creating.')

    def handle(self, *args, **options):
        # create user
        many_users = options['n'] if options['n'] else 50
        if User.objects.count() <= 100:
            user_list = []
            for _ in range(many_users):
                username_email = self.fake.ascii_free_email()
                while len(username_email) >= 30:
                    username_email = self.fake.ascii_free_email()
                data = {
                    'first_name': self.fake.first_name(),
                    'last_name': self.fake.last_name(),
                    'username': username_email,
                    'email': username_email,
                    'password': '******',
                    'is_active': True,
                }
                user_list.append(User(**data))
            User.objects.bulk_create(user_list)
            print(
                f'{many_users} Random Users created! , you have {User.objects.count()} in totla'
            )
        else:
            print('max user was created to teste...')
Exemplo n.º 3
0
class TestPtBR(unittest.TestCase):

    def setUp(self):
        self.factory = Faker('pt_BR')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'VitóriaMagalhães',
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'vitoriamagalhaes'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'JoãoSimões',
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'joaosimoes'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'AndréCauã',
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'andrecaua'
Exemplo n.º 4
0
    def testcase_1(self):
        driver = self.driver
        url = "https://thinhtest100.myshopify.com/products/test-1"

        # image
        image_1 = "C:\\Users\\PC\\Downloads\\anh-gif-dong-dep_054757287.gif"
        image_2 = "C:\\Users\\PC\\Downloads\\image1.png"
        choice_image = [image_1, image_2]

        # Name
        fake = Faker()
        name = fake.name()
        email = fake.ascii_free_email()
        content = fake.paragraphs()

        review_Page = writeReview(driver)

        # Label: Test
        # ERROR: Caught exception [ERROR: Unsupported command [resizeWindow | 1920,937 | ]]
        for i in range(0, 1):
            driver.get(url)
            driver.maximize_window()
            review_Page.click_write_review_btn()
            review_Page.set_fill_name(name)
            sleep(2)
            review_Page.set_fill_email(email)
            sleep(2)
            review_Page.set_fill_content(content)
            sleep(2)
            review_Page.set_add_photo(random.choice(choice_image))
            sleep(2)
            review_Page.click_add_review_btn()
            sleep(5)
Exemplo n.º 5
0
def new_user():
    DataFactory = Faker(location=["en-US", "zh_CN"])
    Nickname = DataFactory.name()
    DataFactory = Faker(location=["en-US"])
    Username = DataFactory.first_name_nonbinary()
    if len(Username) < 6:
        Username = Username + "_" + ''.join(
            random.sample(string.ascii_letters + string.digits, 6))
    Firstname = DataFactory.first_name()
    Lastname = DataFactory.last_name()
    Passwd = PASSWORD_DEFAULT
    SecurityPasswd = security_passwd()
    DataFactory.add_provider(ChinesePhone)
    Phone = DataFactory.MainlandCellPhone()
    Email = DataFactory.ascii_free_email()
    Description = DataFactory.job()
    DataFactory.add_provider(SystemRole)
    Role = DataFactory.role()
    return {
        "userMessage": [{
            "nickName": Nickname,
            "userName": Username,
            "password": SecurityPasswd,
            "phone": Phone,
            "email": Email,
            "note": Description
        }],
        "userRole":
        Role
    }
Exemplo n.º 6
0
def front_user(count=10):
    fake = Faker(locale='zh_CN')
    n = 0
    for i in range(count):
        u = User()
        u.telephone = fake.phone_number()
        u.username = fake.user_name()
        u.email = fake.ascii_free_email()
        u.password = '******'
        u.confirm = choice([True, False])
        u.realname = fake.name()
        with open('mxavatar.json', 'r') as f:
            avatar_list = json.load(f)
        u.avatar = choice(avatar_list)
        u.signature = fake.paragraph(nb_sentences=3,
                                     variable_nb_sentences=True)
        u.gender = GenderEnum(randint(1, 4))
        u.join_time = fake.date_this_year(before_today=True, after_today=False)
        role = Role()
        u.role = role
        db.session.add(u)
        try:
            db.session.commit()
            n += 1
        except Exception:
            db.session.rollback()
    print('Front用户添加成功,共同添加%d个用户' % n)
Exemplo n.º 7
0
class TestNlNl(unittest.TestCase):

    def setUp(self):
        self.factory = Faker('nl_NL')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné'
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email, check_deliverability=False)
        self.assertEqual(email.split('@')[0], 'fabienne')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné'
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email, check_deliverability=False)
        self.assertEqual(email.split('@')[0], 'fabienne')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné'
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email, check_deliverability=False)
        self.assertEqual(email.split('@')[0], 'fabienne')
Exemplo n.º 8
0
class TestPtBR(unittest.TestCase):
    def setUp(self):
        self.factory = Faker('pt_BR')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'VitóriaMagalhães',
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email)
        assert email.split('@')[0] == 'vitoriamagalhaes'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'JoãoSimões',
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email)
        assert email.split('@')[0] == 'joaosimoes'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'AndréCauã',
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email)
        assert email.split('@')[0] == 'andrecaua'
Exemplo n.º 9
0
class TestArAa(unittest.TestCase):
    def setUp(self):
        self.factory = Faker('ar_AA')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email)
        assert email.split('@')[0] == 'asyl'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email)
        assert email.split('@')[0] == 'asyl'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email)
        assert email.split('@')[0] == 'asyl'
Exemplo n.º 10
0
class TestArAa(unittest.TestCase):

    def setUp(self):
        self.factory = Faker('ar_AA')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'asyl'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'asyl'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'اصيل',
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email, check_deliverability=False)
        assert email.split('@')[0] == 'asyl'
Exemplo n.º 11
0
class TestNlNl(unittest.TestCase):
    def setUp(self):
        self.factory = Faker('nl_NL')
        self.provider = self.factory.provider('faker.providers.internet')

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné',
    )
    def test_ascii_safe_email(self):
        email = self.factory.ascii_safe_email()
        validate_email(email)
        assert email.split('@')[0] == 'fabienne'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné',
    )
    def test_ascii_free_email(self):
        email = self.factory.ascii_free_email()
        validate_email(email)
        assert email.split('@')[0] == 'fabienne'

    @mock.patch(
        'faker.providers.internet.Provider.user_name',
        lambda x: 'fabiënné',
    )
    def test_ascii_company_email(self):
        email = self.factory.ascii_company_email()
        validate_email(email)
        assert email.split('@')[0] == 'fabienne'
Exemplo n.º 12
0
    def testcase_1(self):
        driver = self.driver
        # url = "https://store-billing-01.myshopify.com/collections/all"
        url = "https://store-vile-10.myshopify.com/collections/all"

        order_Page = createOrder(driver)

        # ERROR: Caught exception [ERROR: Unsupported command [resizeWindow | 1920,937 | ]]
        for i in range(0, 10):

            fake = Faker()
            name = fake.name()
            email = fake.ascii_free_email()
            content = fake.paragraphs()
            firstname = fake.first_name()
            lastname = fake.last_name()
            address = fake.street_address()
            city = fake.city()
            postalcode = "550000"

            # Phone
            rnd_value = str(random.randint(1000, 9000))
            phone = "+1201555" + rnd_value
            # mail = fake.email()
            name_phone = [phone]

            # Card
            number = 1
            namecard = "card test"
            month = 11
            year = 22
            code = 112

            # Create order
            driver.get(url)
            driver.maximize_window()
            order_Page.click_select_product_btn()
            order_Page.click_buy_now()
            order_Page.set_fill_name_phone(random.choice(name_phone))
            order_Page.set_fill_first_name(firstname)
            order_Page.set_fill_last_name(lastname)
            order_Page.set_fill_adress(address)
            order_Page.set_fill_city(city)
            order_Page.set_fill_postal_code(postalcode)
            order_Page.click_next_btn()
            order_Page.click_next_btn()
            # sleep(1)
            # driver.switch_to.frame(driver.find_element_by_xpath('//iframe[@title="Field container for: Card number"]'))
            order_Page.set_fill_number_card(number)
            order_Page.set_fill_name_card(namecard)
            order_Page.set_fill_expiry_card(month, year)
            order_Page.set_fill_security_card(code)
            order_Page.click_next_btn()
            sleep(3)
Exemplo n.º 13
0
def seed_db_with_users():
    fake = Faker()

    for i in range(100):
        if randint(0, 1) == 1:
            password = get_good_password()
        else:
            password = get_bad_password()

        random_balance = randint(25, 25000) * random()

        requests.post(url="http://127.0.0.1:8888/register",
                      json={"email": fake.ascii_free_email(), "password": password, "starting_balance": random_balance})
Exemplo n.º 14
0
async def gen_fake_details(client, message):
    lel = await edit_or_reply(message, "`Processing...`")
    fake = Faker()
    name = str(fake.name())
    fake.add_provider(internet)
    address = str(fake.address())
    ip = fake.ipv4_private()
    cc = fake.credit_card_full()
    email = fake.ascii_free_email()
    job = fake.job()
    android = fake.android_platform_token()
    pc = fake.chrome()
    await lel.edit(
        f"<b><u> Fake Information Generated</b></u>\n<b>Name :-</b><code>{name}</code>\n\n<b>Address:-</b><code>{address}</code>\n\n<b>IP ADDRESS:-</b><code>{ip}</code>\n\n<b>credit card:-</b><code>{cc}</code>\n\n<b>Email Id:-</b><code>{email}</code>\n\n<b>Job:-</b><code>{job}</code>\n\n<b>android user agent:-</b><code>{android}</code>\n\n<b>Pc user agent:-</b><code>{pc}</code>",
        parse_mode="HTML",
    )
Exemplo n.º 15
0
async def hi(event):
    if event.fwd_from:
        return
    fake = Faker()
    print("FAKE DETAILS GENERATED\n")
    name = str(fake.name())
    fake.add_provider(internet)
    address = str(fake.address())
    ip = fake.ipv4_private()
    cc = fake.credit_card_full()
    email = fake.ascii_free_email()
    job = fake.job()
    android = fake.android_platform_token()
    pc = fake.chrome()
    await event.edit(
        f"<b><u> Fake Information Generated</b></u>\n<b>Name :-</b><code>{name}</code>\n\n<b>Address:-</b><code>{address}</code>\n\n<b>IP ADDRESS:-</b><code>{ip}</code>\n\n<b>credit card:-</b><code>{cc}</code>\n\n<b>Email Id:-</b><code>{email}</code>\n\n<b>Job:-</b><code>{job}</code>\n\n<b>android user agent:-</b><code>{android}</code>\n\n<b>Pc user agent:-</b><code>{pc}</code>",
        parse_mode="HTML",
    )
Exemplo n.º 16
0
async def hi(event):
    if event.fwd_from:
        return
    fake = Faker()
    print("FAKE DETAILS GENERATED\n")
    name = str(fake.name())
    fake.add_provider(internet)
    address = str(fake.address())
    ip = fake.ipv4_private()
    cc = fake.credit_card_full()
    email = fake.ascii_free_email()
    job = fake.job()
    android = fake.android_platform_token()
    pc = fake.chrome()
    await event.edit(
        f"<b><u> Fake Information Generated</b></u>\n<b>👥 Nama : </b><code>{name}</code>\n\n<b>🏘️ Alamat : </b><code>{address}</code>\n\n<b>🤖 Alamat IP : </b><code>{ip}</code>\n\n<b>🏧 Kartu Kredit : </b><code>{cc}</code>\n\n<b>🔗 Alamat Email : </b><code>{email}</code>\n\n<b>👨🏻‍🔧 Pekerjaan : </b><code>{job}</code>\n\n<b>📱 Android User-Agent : </b><code>{android}</code>\n\n<b>🖥️ PC User-Agent : </b><code>{pc}</code>",
        parse_mode="HTML",
    )
Exemplo n.º 17
0
def fakeid(update: Update, context: CallbackContext):
    message = update.effective_message
    dltmsg = message.reply_text("generating fake identity for you...")
    fake = Faker()
    print("FAKE DETAILS GENERATED\n")
    name = str(fake.name())
    fake.add_provider(internet)
    address = str(fake.address())
    ip = fake.ipv4_private()
    cc = fake.credit_card_full()
    email = fake.ascii_free_email()
    job = fake.job()
    android = fake.android_platform_token()
    pc = fake.chrome()
    message.reply_text(
        f"<b> Fake Information Generated</b>\n<b>Name :-</b><code>{name}</code>\n\n<b>Address:-</b><code>{address}</code>\n\n<b>IP ADDRESS:-</b><code>{ip}</code>\n\n<b>credit card:-</b><code>{cc}</code>\n\n<b>Email Id:-</b><code>{email}</code>\n\n<b>Job:-</b><code>{job}</code>\n\n<b>android user agent:-</b><code>{android}</code>\n\n<b>Pc user agent:-</b><code>{pc}</code>",
        parse_mode=ParseMode.HTML,
    )

    dltmsg.delete()
Exemplo n.º 18
0
async def fakegen(event):
    if event.fwd_from:
        return
    if event.is_group:
        if not await is_user_admin(event, event.message.sender_id):
            await event.reply("`You Should Be Admin To Do This!`")
            return
    fake = Faker()
    print("FAKE DETAILS GENERATED\n")
    name = str(fake.name())
    fake.add_provider(internet)
    address = str(fake.address())
    ip = fake.ipv4_private()
    cc = fake.credit_card_full()
    email = fake.ascii_free_email()
    job = fake.job()
    android = fake.android_platform_token()
    pc = fake.chrome()
    await event.reply(
        f"<b><u> Fake Information Generated</b></u>\n<b>Name :-</b><code>{name}</code>\n\n<b>Address:-</b><code>{address}</code>\n\n<b>IP ADDRESS:-</b><code>{ip}</code>\n\n<b>credit card:-</b><code>{cc}</code>\n\n<b>Email Id:-</b><code>{email}</code>\n\n<b>Job:-</b><code>{job}</code>\n\n<b>android user agent:-</b><code>{android}</code>\n\n<b>Pc user agent:-</b><code>{pc}</code>",
        parse_mode="HTML",
    )
Exemplo n.º 19
0
def add_users(num):
    fake = Faker()
    sex_list = ['男', '女', '保密']
    # 添加管理员用户
    u = User(username='******',
             password='******',
             email=current_app.config['FLASK_ADMIN'],
             nickname=fake.name(),
             info=fake.company(),
             sex=random.choices(sex_list),
             confirm=True)
    for i in range(num):
        u = User(username=fake.user_name(),
                 password='******',
                 email=fake.ascii_free_email(),
                 nickname=fake.name(),
                 info=fake.company(),
                 sex=random.choices(sex_list),
                 confirm=True)
        try:
            db.session.add(u)
            db.session.commit()
        except:
            db.session.rollback()
Exemplo n.º 20
0
def create_users():
    faker = Faker('es_MX')
    seed = random.randint(1, 100)
    Faker.seed(seed)
    name = faker.first_name()
    last_name = faker.last_name()
    age = random.randint(1, 100)
    address = faker.address()
    city = 'Monterrey'
    state = 'Nuevo Leon'
    zip = random.randint(64000, 64968)
    country = 'Mexico'
    phone = random.randint(8100000000, 8199999999)
    email = faker.ascii_free_email()
    return {"name": name,
            "last_name": last_name,
            "age": age,
            "address": address,
            "city": city,
            "state": state,
            "zip": zip,
            "country": country,
            "phone": phone,
            "email": email}
Exemplo n.º 21
0
class Command(BaseCommand):

    def __init__(self):
        self.fake = Faker('pt_BR')

    def add_arguments(self, parser):

        parser.add_argument('--all', '-a',
                            action='store_true',
                            help='inicializa todas as tabelas')

        parser.add_argument('--client', '-cli',
                            action='store_true',
                            help='iniciliza a tabela de clientes')

        parser.add_argument('--contact', '-cont',
                            action='store_true',
                            help='inicializa a tablça de  contatos')

        parser.add_argument('--end', '-e',
                            action='store_true',
                            help='inicializa a tabela de endereço')

        parser.add_argument('--prod', '-p',
                            action='store_true',
                            help='inicializa a tabela de produtos')


    def init_client(self):
        '''create fake ciente to test'''
        print('creating fake client ....')
        client_list = []
        for _ in range(100):
            list_ramo = ['grafica', 'arquitetura', 'tecnologia', 'entretenimento', 'segurança', 'construção', 'restaurante','outros']
            _tipo = random.randint(1,2),
            _cpf_cnpj = self.fake.cnpj() if _tipo == 2 else self.fake.cpf()
            _mensalista = True if random.randint(1,3000) % 4 == 0 else False
            _user =  random.choice(User.objects.all())
            data = {
                'razao_social': f'{self.fake.catch_phrase_attribute()} {self.fake.company()} ',
                'nome_fantasia': f'{self.fake.catch_phrase_attribute()} {self.fake.company()} ',
                'tipo': random.randint(1,2),
                'documento': _cpf_cnpj,
                'user': _user,
                'ramo': random.choice(list_ramo),
                'mensalista': _mensalista,
            }
            client_list.append(Cliente(**data))
        Cliente.objects.bulk_create(client_list)

    def init_contato(self):
        print('create fake contact ....')
        list_contatos = []
        list_emails = []
        list_phones = []

        for _ in range(300):
            cliente = random.choice(Cliente.objects.all())
            data = {
                'nome':self.fake.first_name(),
                'sobre_nome': self.fake.last_name(),
                'observacao': self.fake.sentence(nb_words=6, variable_nb_words=True, ext_word_list=None),
                'cliente': cliente
            }
            list_contatos.append(Contato(**data))
        Contato.objects.bulk_create(list_contatos)

        contatos = Contato.objects.all()
        for contato in contatos:
            data = {
                'email': self.fake.ascii_free_email(),
                'contato': contato
            }
            list_emails.append(Email(**data))
        Email.objects.bulk_create(list_emails)

        for contato in contatos:
            data = {
                'telefone': self.fake.msisdn(),
                'tipo': random.randint(1,9),
                'contato': contato
            }
            list_phones.append(Telefone(**data))
        Telefone.objects.bulk_create(list_phones)

    def init_endereco(self):
        print('creando fake endereços de clientes...')
        list_end = []
        for _ in range(400):
            complemento_list = ['ap', 'casa', '']
            tipo_comp = random.choice(complemento_list)
            cliente =  random.choice(Cliente.objects.all())
            if tipo_comp == 'ap':
                tipo_comp = '%s %s' % (tipo_comp, random.randint(10, 200))
            if tipo_comp == 'casa':
                tipo_comp = '%s %s' % (tipo_comp, random.randint(1, 5))

            tipo_end = random.randint(1, 4)
            data = {
                'cliente':cliente,
                'logradouro': self.fake.street_prefix(),
                'endereco': self.fake.street_name(),
                'numero': self.fake.building_number(),
                'complemento': tipo_comp,
                'cep': self.fake.postcode(),
                'bairro': self.fake.neighborhood(),
                'cidade': self.fake.city(),
                'uf': self.fake.state_abbr(),
                'tipo_end':tipo_end,
                'observacao':self.fake.sentence(nb_words=6, variable_nb_words=True, ext_word_list=None)
            }
            list_end.append(Endereco(**data))
        Endereco.objects.bulk_create(list_end)

    def init_produtos(self):
        print('create fake group produtos...')
        list_prod = []
        list_group = []

        list_names_groups = []
        for _  in range(20):
            group_name = self.fake.text(max_nb_chars=45, ext_word_list=None)

            while group_name in list_names_groups:
                group_name =  self.fake.word(ext_word_list=None)
                list_names_groups.append(group_name)
            list_names_groups.append(group_name)

            data = {
                'group':  group_name,
                'desc': self.fake.text(max_nb_chars=99, ext_word_list=None)
            }
            list_group.append(GroupProduct(**data))

        GroupProduct.objects.bulk_create(list_group)
        list_group_created = GroupProduct.objects.all()
        print('create fake produtos...')
        list_names_product = []
        for _ in range(600):
            product_name = self.fake.text(max_nb_chars=99, ext_word_list=None)

            while product_name in list_names_product:
                product_name =  self.fake.word(ext_word_list=None)
                list_names_product.append(product_name)
            list_names_product.append(product_name)

            tipo = random.randint(1,2)
            quantidade = random.randint(1,200)
            description = self.fake.sentences(nb=3, ext_word_list=None)
            val = round(random.uniform(0.5, 95.9),2)
            data = {
                'nome': product_name,
                'desc': description,
                'quantidade': quantidade,
                'valor': val,
                'tipo': tipo,
                'group': random.choice(list_group_created),
                'data_create': self.fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None),
                'data_update': self.fake.date_time_between_dates(datetime_start=None, datetime_end=None, tzinfo=None)
            }
            list_prod.append(Produto(**data))
        Produto.objects.bulk_create(list_prod)


    def handle(self, *args, **options):

        if User.objects.count() < 30:
            user_list = []
            for _ in range(30):
                username_email = self.fake.ascii_free_email()
                while len(username_email) >= 30:
                    username_email = self.fake.ascii_free_email()
                data = {
                    'first_name': self.fake.first_name(),
                    'last_name': self.fake.last_name(),
                    'username': username_email,
                    'email': username_email,
                    'password':'******',
                    'is_active':True,
                }
                user_list.append(User(**data))
            User.objects.bulk_create(user_list)

        if options['client'] or options['all']:
            self.init_client()

        if options['contact'] or options['all']:
            self.init_contato()

        if options['end'] or options['all']:
            self.init_endereco()
        #
        if options['prod'] or options['all']:
            self.init_produtos()
Exemplo n.º 22
0
    def testcase_1(self):
        driver = self.driver
        url = "https://store-billing-01.myshopify.com/admin"
        # url = "https://store-vile-11.myshopify.com/46107132053/checkouts/16dc72b2fdeb10ef698b27c140d3fa4e?previous_step=shipping_method&step=payment_method"
        # Name
        fake = Faker()
        name = fake.name()
        email_fake = fake.ascii_free_email()
        content = fake.paragraphs()
        firstname = fake.first_name()
        lastname = fake.last_name()
        address = fake.street_address()
        city = fake.city()
        postalcode = "550000"

        # Phone
        rnd_value = str(random.randint(1000, 9000))
        phone = "+1201555" + rnd_value
        # mail = fake.email()
        name_phone = [email_fake, phone]

        # image
        image_1 = "C:\\Users\\PC\\Pictures\\image\\1.jpg"
        image_2 = "C:\\Users\\PC\\Pictures\\image\\2.jpg"
        image_3 = "C:\\Users\\PC\\Pictures\\image\\3.jpg"
        image_4 = "C:\\Users\\PC\\Pictures\\image\\4.jpg"
        image_5 = "C:\\Users\\PC\\Pictures\\image\\5.jpg"
        image_6 = "C:\\Users\\PC\\Pictures\\image\\6.jpg"
        image_7 = "C:\\Users\\PC\\Pictures\\image\\7.jpg"
        image_8 = "C:\\Users\\PC\\Pictures\\image\\8.jpg"
        image_9 = "C:\\Users\\PC\\Pictures\\image\\9.jpg"
        image_10 = "C:\\Users\\PC\\Pictures\\image\\10.jpg"
        image_11 = "C:\\Users\\PC\\Pictures\\image\\11.jpg"
        image_12 = "C:\\Users\\PC\\Pictures\\image\\12.jpg"
        image_13 = "C:\\Users\\PC\\Pictures\\image\\13.jpg"
        image_14 = "C:\\Users\\PC\\Pictures\\image\\14.jpg"
        image_15 = "C:\\Users\\PC\\Pictures\\image\\15.jpg"

        choice_image = [
            image_1,
            image_2,
            image_3,
            image_4,
            image_5,
            image_6,
            image_7,
            image_8,
            image_9,
            image_10,
            image_11,
            image_12,
            image_13,
            image_14,
            image_15,
        ]

        # Account
        email = "*****@*****.**"
        password = "******"
        today = datetime.now()
        # time_str = today.strftime("%d%m%H%M%S")
        # product_name = "Product" + "-" + time_str
        # product_price = str(random.randint(1000000,99999999))
        # product_quantity = str(random.randint(1000,9000))
        # product_type = ['Product type 1', 'Product type 2', 'Product type 3']

        products_Page = addProducts(driver)
        driver.get(url)
        driver.maximize_window()
        products_Page.set_fill_email_shopify(email)
        products_Page.click_next_btn_shopify()
        products_Page.set_fill_pass_shopify(password)
        products_Page.click_login_btn_shopify()
        sleep(2)
        # ERROR: Caught exception [ERROR: Unsupported command [resizeWindow | 1920,937 | ]]
        for i in range(0, 200):

            today = datetime.now()
            time_str = today.strftime("%d%m%H%M%S")
            product_name = "Product" + "-" + time_str
            product_price = str(random.randint(1000000, 7000000))
            product_quantity = str(random.randint(1000, 9000))

            products_Page.click_product_btn_shopify()
            sleep(2)
            products_Page.click_add_product_btn_shopify()
            products_Page.set_fill_product_name_shopify(product_name)
            sleep(2)
            products_Page.set_add_photo_product(random.choice(choice_image))
            sleep(2)
            products_Page.set_fill_product_price_shopify(product_price)
            sleep(2)
            products_Page.set_fill_product_quantity_shopify(product_quantity)
            sleep(2)
            products_Page.click_save_product_btn_shopify()
            sleep(3)
            driver.get(url)
Exemplo n.º 23
0
async def inline_query_handler(client, query):
    try:
        text = query.query.lower()
        answers = []
        if text.strip() == "":
            answerss = await inline_help_func(__HELP__)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
            return
        elif text.split()[0] == "alive":
            answerss = await alive_function(answers)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
        elif text.split()[0] == "tr":
            lang = text.split()[1]
            tex = text.split(None, 2)[2]
            answerss = await translate_func(answers, lang, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
        elif text.split()[0] == "ud":
            tex = text.split(None, 1)[1]
            answerss = await urban_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
        elif text.split()[0] == "google":
            tex = text.split(None, 1)[1]
            answerss = await google_search_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
        elif text.split()[0] == "webss":
            tex = text.split(None, 1)[1]
            answerss = await webss(tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=2)
        elif text.split()[0] == "bitly":
            tex = text.split(None, 1)[1]
            answerss = await shortify(tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=2)
        elif text.split()[0] == "wiki":
            if len(text.split()) < 2:
                await client.answer_inline_query(
                    query.id,
                    results=answers,
                    switch_pm_text="Wikipedia | wiki [QUERY]",
                    switch_pm_parameter="inline",
                )
                return
            tex = text.split(None, 1)[1].strip()
            answerss = await wiki_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=2)

        elif text.split()[0] == "ping":
            answerss = await ping_func(answers)
            await client.answer_inline_query(query.id, results=answerss, cache_time=2)
            return

        elif text.split()[0] == "yt":
            answers = []
            search_query = text.split(None, 1)[1]
            search_query = query.query.lower().strip().rstrip()

            if search_query == "":
                await client.answer_inline_query(
                    query.id,
                    results=answers,
                    switch_pm_text="Type a YouTube video name...",
                    switch_pm_parameter="help",
                    cache_time=0,
                )
            else:
                search = VideosSearch(search_query, limit=50)

                for result in search.result()["result"]:
                    answers.append(
                        InlineQueryResultArticle(
                            title=result["title"],
                            description="{}, {} views.".format(
                                result["duration"], result["viewCount"]["short"]
                            ),
                            input_message_content=InputTextMessageContent(
                                "https://www.youtube.com/watch?v={}".format(
                                    result["id"]
                                )
                            ),
                            thumb_url=result["thumbnails"][0]["url"],
                        )
                    )

                try:
                    await query.answer(results=answers, cache_time=0)
                except errors.QueryIdInvalid:
                    await query.answer(
                        results=answers,
                        cache_time=0,
                        switch_pm_text="Error: Search timed out",
                        switch_pm_parameter="",
                    )

        elif text.split()[0] == "wall":
            tex = text.split(None, 1)[1]
            answerss = await wall_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss)

        elif text.split()[0] == "pic":
            tex = text.split(None, 1)[1]
            answerss = await wall_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss)

        elif text.split()[0] == "saavn":
            tex = text.split(None, 1)[1]
            answerss = await saavn_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss)

        elif text.split()[0] == "deezer":
            tex = text.split(None, 1)[1]
            answerss = await deezer_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss)

        elif text.split()[0] == "torrent":
            tex = text.split(None, 1)[1]
            answerss = await torrent_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=10)
        elif text.split()[0] == "modapk":
            sgname = text.split(None, 1)[1]
            PabloEscobar = (
                f"https://an1.com/tags/MOD/?story={sgname}&do=search&subaction=search"
            )
            r = requests.get(PabloEscobar)
            results = []
            soup = BeautifulSoup(r.content, "html5lib")
            mydivs = soup.find_all("div", {"class": "search-results"})
            Pop = soup.find_all("div", {"class": "title"})
            cnte = len(mydivs)
            for cnt in range(cnte):
                sucker = mydivs[cnt]
                pH9 = sucker.find("a").contents[0]
                file_name = pH9
                pH = sucker.findAll("img")
                imme = pH[0]["src"]
                Pablo = Pop[0].a["href"]
                ro = requests.get(Pablo)
                soupe = BeautifulSoup(ro.content, "html5lib")
                myopo = soupe.find_all("div", {"class": "item"})
                capt = f"**{file_name}** \n** {myopo[0].text}**\n**{myopo[1].text}**\n**{myopo[2].text}**\n**{myopo[3].text}**"
                mydis0 = soupe.find_all("a", {"class": "get-product"})
                Lol9 = mydis0[0]
                lemk = "https://an1.com" + Lol9["href"]
                rr = requests.get(lemk)
                soup = BeautifulSoup(rr.content, "html5lib")
                script = soup.find("script", type="text/javascript")
                leek = re.search(r'href=[\'"]?([^\'" >]+)', script.text).group()
                dl_link = leek[5:]

                results.append(
                    InlineQueryResultPhoto(
                        photo_url=imme,
                        title=file_name,
                        caption=capt,
                        reply_markup=InlineKeyboardMarkup(
                            [
                                [InlineKeyboardButton("Download Link", url=lemk)],
                                [
                                    InlineKeyboardButton(
                                        "Direct Download Link", url=dl_link
                                    )
                                ],
                            ]
                        ),
                    )
                )

            await client.answer_inline_query(query.id, cache_time=0, results=results)
        elif text.split()[0] == "reddit":
            subreddit = text.split(None, 1)[1]
            results = []
            reddit = await arq.reddit(subreddit)
            sreddit = reddit.subreddit
            title = reddit.title
            image = reddit.url
            link = reddit.postLink
            caption = f"""**Title:** `{title}`
            Subreddit: `{sreddit}`"""
            results.append(
                InlineQueryResultPhoto(
                    photo_url=image,
                    title="Meme Search",
                    caption=caption,
                    reply_markup=InlineKeyboardMarkup(
                        [
                            [InlineKeyboardButton("PostLink", url=link)],
                        ]
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "imdb":
            movie_name = text.split(None, 1)[1]
            results = []
            remove_space = movie_name.split(" ")
            final_name = "+".join(remove_space)
            page = requests.get(
                "https://www.imdb.com/find?ref_=nv_sr_fn&q=" + final_name + "&s=all"
            )
            str(page.status_code)
            soup = BeautifulSoup(page.content, "lxml")
            odds = soup.findAll("tr", "odd")
            mov_title = odds[0].findNext("td").findNext("td").text
            mov_link = (
                "http://www.imdb.com/" + odds[0].findNext("td").findNext("td").a["href"]
            )
            page1 = requests.get(mov_link)
            soup = BeautifulSoup(page1.content, "lxml")
            if soup.find("div", "poster"):
                poster = soup.find("div", "poster").img["src"]
            else:
                poster = ""
            if soup.find("div", "title_wrapper"):
                pg = soup.find("div", "title_wrapper").findNext("div").text
                mov_details = re.sub(r"\s+", " ", pg)
            else:
                mov_details = ""
            credits = soup.findAll("div", "credit_summary_item")
            if len(credits) == 1:
                director = credits[0].a.text
                writer = "Not available"
                stars = "Not available"
            elif len(credits) > 2:
                director = credits[0].a.text
                writer = credits[1].a.text
                actors = []
                for x in credits[2].findAll("a"):
                    actors.append(x.text)
                actors.pop()
                stars = actors[0] + "," + actors[1] + "," + actors[2]
            else:
                director = credits[0].a.text
                writer = "Not available"
                actors = []
                for x in credits[1].findAll("a"):
                    actors.append(x.text)
                actors.pop()
                stars = actors[0] + "," + actors[1] + "," + actors[2]
            if soup.find("div", "inline canwrap"):
                story_line = soup.find("div", "inline canwrap").findAll("p")[0].text
            else:
                story_line = "Not available"
            info = soup.findAll("div", "txt-block")
            if info:
                mov_country = []
                mov_language = []
                for node in info:
                    a = node.findAll("a")
                    for i in a:
                        if "country_of_origin" in i["href"]:
                            mov_country.append(i.text)
                        elif "primary_language" in i["href"]:
                            mov_language.append(i.text)
            if soup.findAll("div", "ratingValue"):
                for r in soup.findAll("div", "ratingValue"):
                    mov_rating = r.strong["title"]
            else:
                mov_rating = "Not available"
            lol = f"Movie - {mov_title}\n Click to see more"
            msg = (
                "<a href=" + poster + ">&#8203;</a>"
                "<b>Title : </b><code>"
                + mov_title
                + "</code>\n<code>"
                + mov_details
                + "</code>\n<b>Rating : </b><code>"
                + mov_rating
                + "</code>\n<b>Country : </b><code>"
                + mov_country[0]
                + "</code>\n<b>Language : </b><code>"
                + mov_language[0]
                + "</code>\n<b>Director : </b><code>"
                + director
                + "</code>\n<b>Writer : </b><code>"
                + writer
                + "</code>\n<b>Stars : </b><code>"
                + stars
                + "</code>\n<b>IMDB Url : </b>"
                + mov_link
                + "\n<b>Story Line : </b>"
                + story_line
            )
            results.append(
                InlineQueryResultArticle(
                    title="Imdb Search",
                    description=lol,
                    input_message_content=InputTextMessageContent(
                        msg, disable_web_page_preview=False, parse_mode="HTML"
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)
        elif text.split()[0] == "spaminfo":
            cmd = text.split(None, 1)[1]
            results = []
            url = f"https://api.intellivoid.net/spamprotection/v1/lookup?query={cmd}"
            a = await AioHttp().get_json(url)
            response = a["success"]
            if response is True:
                date = a["results"]["last_updated"]
                stats = f"**◢ Intellivoid• SpamProtection Info**:\n"
                stats += f' • **Updated on**: `{datetime.fromtimestamp(date).strftime("%Y-%m-%d %I:%M:%S %p")}`\n'
                stats += f" • **Chat Info**: [Link](t.me/SpamProtectionBot/?start=00_{cmd})\n"

                if a["results"]["attributes"]["is_potential_spammer"] is True:
                    stats += f" • **User**: `USERxSPAM`\n"
                elif a["results"]["attributes"]["is_operator"] is True:
                    stats += f" • **User**: `USERxOPERATOR`\n"
                elif a["results"]["attributes"]["is_agent"] is True:
                    stats += f" • **User**: `USERxAGENT`\n"
                elif a["results"]["attributes"]["is_whitelisted"] is True:
                    stats += f" • **User**: `USERxWHITELISTED`\n"

                stats += f' • **Type**: `{a["results"]["entity_type"]}`\n'
                stats += f' • **Language**: `{a["results"]["language_prediction"]["language"]}`\n'
                stats += f' • **Language Probability**: `{a["results"]["language_prediction"]["probability"]}`\n'
                stats += f"**Spam Prediction**:\n"
                stats += f' • **Ham Prediction**: `{a["results"]["spam_prediction"]["ham_prediction"]}`\n'
                stats += f' • **Spam Prediction**: `{a["results"]["spam_prediction"]["spam_prediction"]}`\n'
                stats += f'**Blacklisted**: `{a["results"]["attributes"]["is_blacklisted"]}`\n'
                if a["results"]["attributes"]["is_blacklisted"] is True:
                    stats += f' • **Reason**: `{a["results"]["attributes"]["blacklist_reason"]}`\n'
                    stats += f' • **Flag**: `{a["results"]["attributes"]["blacklist_flag"]}`\n'
                stats += f'**PTID**:\n`{a["results"]["private_telegram_id"]}`\n'
                results.append(
                    InlineQueryResultArticle(
                        title="Spam Info",
                        description="Search Users spam info",
                        input_message_content=InputTextMessageContent(
                            stats, disable_web_page_preview=True
                        ),
                    )
                )
                await client.answer_inline_query(
                    query.id, cache_time=0, results=results
                )
        elif text.split()[0] == "lyrics":
            cmd = text.split(None, 1)[1]
            results = []

            song = ""
            song = Song.find_song(cmd)
            if song:
                if song.lyrics:
                    reply = song.format()
                else:
                    reply = "Couldn't find any lyrics for that song! try with artist name along with song if still doesnt work try `.glyrics`"
            else:
                reply = "lyrics not found! try with artist name along with song if still doesnt work try `.glyrics`"

            if len(reply) > 4095:
                reply = "lyrics too big, Try using /lyrics"

            results.append(
                InlineQueryResultArticle(
                    title="Song Lyrics",
                    description="Click here to see lyrics",
                    input_message_content=InputTextMessageContent(
                        reply, disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)
        elif text.split()[0] == "pokedex":
            if len(text.split()) < 2:
                await client.answer_inline_query(
                    query.id,
                    results=answers,
                    switch_pm_text="Pokemon [text]",
                    switch_pm_parameter="pokedex",
                )
                return
            pokedex = text.split(None, 1)[1].strip()
            Pokedex = await pokedexinfo(answers, pokedex)
            await client.answer_inline_query(query.id, results=Pokedex, cache_time=2)
        elif text.split()[0] == "paste":
            tex = text.split(None, 1)[1]
            answerss = await paste_func(answers, tex)
            await client.answer_inline_query(query.id, results=answerss, cache_time=2)

        elif text.split()[0] == "covid":
            lel = text.split(None, 1)[1]
            results = []
            country = lel.replace(" ", "")
            data = await fetch(f"https://corona.lmao.ninja/v2/countries/{country}")
            data = await json_prettify(data)
            results.append(
                InlineQueryResultArticle(
                    title="Covid Info Gathered succesfully",
                    description=data,
                    input_message_content=InputTextMessageContent(
                        data, disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, results=results, cache_time=2)
        elif text.split()[0] == "country":
            lel = text.split(None, 1)[1]
            results = []
            country = CountryInfo(lel)
            try:
                a = country.info()
            except:
                a = "Country Not Avaiable Currently"
            name = a.get("name")
            bb = a.get("altSpellings")
            hu = ""
            for p in bb:
                hu += p + ",  "

            area = a.get("area")
            borders = ""
            hell = a.get("borders")
            for fk in hell:
                borders += fk + ",  "

            call = ""
            WhAt = a.get("callingCodes")
            for what in WhAt:
                call += what + "  "

            capital = a.get("capital")
            currencies = ""
            fker = a.get("currencies")
            for FKer in fker:
                currencies += FKer + ",  "

            HmM = a.get("demonym")
            geo = a.get("geoJSON")
            pablo = geo.get("features")
            Pablo = pablo[0]
            PAblo = Pablo.get("geometry")
            EsCoBaR = PAblo.get("type")
            iso = ""
            iSo = a.get("ISO")
            for hitler in iSo:
                po = iSo.get(hitler)
                iso += po + ",  "
            fla = iSo.get("alpha2")
            fla.upper()

            languages = a.get("languages")
            lMAO = ""
            for lmao in languages:
                lMAO += lmao + ",  "

            nonive = a.get("nativeName")
            waste = a.get("population")
            reg = a.get("region")
            sub = a.get("subregion")
            tik = a.get("timezones")
            tom = ""
            for jerry in tik:
                tom += jerry + ",   "

            GOT = a.get("tld")
            lanester = ""
            for targaryen in GOT:
                lanester += targaryen + ",   "

            wiki = a.get("wiki")

            caption = f"""<b><u>Information Gathered Successfully</b></u>
        <b>
        Country Name:- {name}
        Alternative Spellings:- {hu}
        Country Area:- {area} square kilometers
        Borders:- {borders}
        Calling Codes:- {call}
        Country's Capital:- {capital}
        Country's currency:- {currencies}
        Demonym:- {HmM}
        Country Type:- {EsCoBaR}
        ISO Names:- {iso}
        Languages:- {lMAO}
        Native Name:- {nonive}
        population:- {waste}
        Region:- {reg}
        Sub Region:- {sub}
        Time Zones:- {tom}
        Top Level Domain:- {lanester}
        wikipedia:- {wiki}</b>
        Gathered By Daisy X.</b>
        """
            results.append(
                InlineQueryResultArticle(
                    title=f"Infomation of {name}",
                    description=f"""
        Country Name:- {name}
        Alternative Spellings:- {hu}
        Country Area:- {area} square kilometers
        Borders:- {borders}
        Calling Codes:- {call}
        Country's Capital:- {capital}
        
        Touch for more info
        """,
                    input_message_content=InputTextMessageContent(
                        caption, parse_mode="HTML", disable_web_page_preview=True
                    ),
                )
            )
            await client.answer_inline_query(query.id, results=results, cache_time=2)

        elif text.split()[0] == "fakegen":
            results = []
            fake = Faker()
            name = str(fake.name())
            fake.add_provider(internet)
            address = str(fake.address())
            ip = fake.ipv4_private()
            cc = fake.credit_card_full()
            email = fake.ascii_free_email()
            job = fake.job()
            android = fake.android_platform_token()
            pc = fake.chrome()
            res = f"<b><u> Fake Information Generated</b></u>\n<b>Name :-</b><code>{name}</code>\n\n<b>Address:-</b><code>{address}</code>\n\n<b>IP ADDRESS:-</b><code>{ip}</code>\n\n<b>credit card:-</b><code>{cc}</code>\n\n<b>Email Id:-</b><code>{email}</code>\n\n<b>Job:-</b><code>{job}</code>\n\n<b>android user agent:-</b><code>{android}</code>\n\n<b>Pc user agent:-</b><code>{pc}</code>"
            results.append(
                InlineQueryResultArticle(
                    title="Fake infomation gathered",
                    description="Click here to see them",
                    input_message_content=InputTextMessageContent(
                        res, parse_mode="HTML", disable_web_page_preview=True
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "cs":
            results = []
            score_page = "http://static.cricinfo.com/rss/livescores.xml"
            page = urllib.request.urlopen(score_page)
            soup = BeautifulSoup(page, "html.parser")
            result = soup.find_all("description")
            Sed = ""
            for match in result:
                Sed += match.get_text() + "\n\n"
            res = f"<b><u>Match information gathered successful</b></u>\n\n\n<code>{Sed}</code>"
            results.append(
                InlineQueryResultArticle(
                    title="Match information gathered",
                    description="Click here to see them",
                    input_message_content=InputTextMessageContent(
                        res, parse_mode="HTML", disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "antonyms":
            results = []
            lel = text.split(None, 1)[1]
            word = f"{lel}"
            let = dictionary.antonym(word)
            set = str(let)
            jet = set.replace("{", "")
            net = jet.replace("}", "")
            got = net.replace("'", "")
            results.append(
                InlineQueryResultArticle(
                    title=f"antonyms for {lel}",
                    description=got,
                    input_message_content=InputTextMessageContent(
                        got, disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "synonyms":
            results = []
            lel = text.split(None, 1)[1]
            word = f"{lel}"
            let = dictionary.synonym(word)
            set = str(let)
            jet = set.replace("{", "")
            net = jet.replace("}", "")
            got = net.replace("'", "")
            results.append(
                InlineQueryResultArticle(
                    title=f"antonyms for {lel}",
                    description=got,
                    input_message_content=InputTextMessageContent(
                        got, disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "define":
            results = []
            lel = text.split(None, 1)[1]
            word = f"{lel}"
            let = dictionary.meaning(word)
            set = str(let)
            jet = set.replace("{", "")
            net = jet.replace("}", "")
            got = net.replace("'", "")
            results.append(
                InlineQueryResultArticle(
                    title=f"Definition for {lel}",
                    description=got,
                    input_message_content=InputTextMessageContent(
                        got, disable_web_page_preview=False
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "weather":
            results = []
            sample_url = "https://api.openweathermap.org/data/2.5/weather?q={}&APPID={}&units=metric"
            input_str = text.split(None, 1)[1]
            async with aiohttp.ClientSession() as session:
                response_api_zero = await session.get(
                    sample_url.format(input_str, OPENWEATHERMAP_ID)
                )
            response_api = await response_api_zero.json()
            if response_api["cod"] == 200:
                country_code = response_api["sys"]["country"]
                country_time_zone = int(response_api["timezone"])
                sun_rise_time = int(response_api["sys"]["sunrise"]) + country_time_zone
                sun_set_time = int(response_api["sys"]["sunset"]) + country_time_zone
                lol = """ 
        WEATHER INFO GATHERED
        Location: {}
        Temperature ☀️: {}°С
            minimium: {}°С
            maximum : {}°С
        Humidity 🌤**: {}%
        Wind 💨: {}m/s
        Clouds ☁️: {}hpa
        Sunrise 🌤: {} {}
        Sunset 🌝: {} {}""".format(
                    input_str,
                    response_api["main"]["temp"],
                    response_api["main"]["temp_min"],
                    response_api["main"]["temp_max"],
                    response_api["main"]["humidity"],
                    response_api["wind"]["speed"],
                    response_api["clouds"]["all"],
                    # response_api["main"]["pressure"],
                    time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime(sun_rise_time)),
                    country_code,
                    time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime(sun_set_time)),
                    country_code,
                )
                results.append(
                    InlineQueryResultArticle(
                        title=f"Weather Information",
                        description=lol,
                        input_message_content=InputTextMessageContent(
                            lol, disable_web_page_preview=True
                        ),
                    )
                )
                await client.answer_inline_query(
                    query.id, cache_time=0, results=results
                )

        elif text.split()[0] == "datetime":
            results = []
            gay = text.split(None, 1)[1]
            lel = gay
            query_timezone = lel.lower()
            if len(query_timezone) == 2:
                result = generate_time(query_timezone, ["countryCode"])
            else:
                result = generate_time(query_timezone, ["zoneName", "countryName"])

            if not result:
                result = f"Timezone info not available for <b>{lel}</b>"

            results.append(
                InlineQueryResultArticle(
                    title=f"Date & Time info of {lel}",
                    description=result,
                    input_message_content=InputTextMessageContent(
                        result, disable_web_page_preview=False, parse_mode="html"
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "app":
            rip = []
            app_name = text.split(None, 1)[1]
            remove_space = app_name.split(" ")
            final_name = "+".join(remove_space)
            page = requests.get(
                "https://play.google.com/store/search?q=" + final_name + "&c=apps"
            )
            str(page.status_code)
            soup = BeautifulSoup(page.content, "lxml", from_encoding="utf-8")
            results = soup.findAll("div", "ZmHEEd")
            app_name = (
                results[0]
                .findNext("div", "Vpfmgd")
                .findNext("div", "WsMG1c nnK0zc")
                .text
            )
            app_dev = (
                results[0].findNext("div", "Vpfmgd").findNext("div", "KoLSrc").text
            )
            app_dev_link = (
                "https://play.google.com"
                + results[0].findNext("div", "Vpfmgd").findNext("a", "mnKHRc")["href"]
            )
            app_rating = (
                results[0]
                .findNext("div", "Vpfmgd")
                .findNext("div", "pf5lIe")
                .find("div")["aria-label"]
            )
            app_link = (
                "https://play.google.com"
                + results[0]
                .findNext("div", "Vpfmgd")
                .findNext("div", "vU6FJ p63iDd")
                .a["href"]
            )
            app_icon = (
                results[0]
                .findNext("div", "Vpfmgd")
                .findNext("div", "uzcko")
                .img["data-src"]
            )
            app_details = "<a href='" + app_icon + "'>📲&#8203;</a>"
            app_details += " <b>" + app_name + "</b>"
            app_details += (
                "\n\n<code>Developer :</code> <a href='"
                + app_dev_link
                + "'>"
                + app_dev
                + "</a>"
            )
            app_details += "\n<code>Rating :</code> " + app_rating.replace(
                "Rated ", "⭐ "
            ).replace(" out of ", "/").replace(" stars", "", 1).replace(
                " stars", "⭐ "
            ).replace(
                "five", "5"
            )
            app_details += (
                "\n<code>Features :</code> <a href='"
                + app_link
                + "'>View in Play Store</a>"
            )
            app_details += "\n\n===> @DaisySupport_Official <==="
            rip.append(
                InlineQueryResultArticle(
                    title=f"Datails of {app_name}",
                    description=app_details,
                    input_message_content=InputTextMessageContent(
                        app_details, disable_web_page_preview=True, parse_mode="html"
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=rip)

        elif text.split()[0] == "gh":
            results = []
            gett = text.split(None, 1)[1]
            text = gett + ' "site:github.com"'
            gresults = await GoogleSearch().async_search(text, 1)
            result = ""
            for i in range(4):
                try:
                    title = gresults["titles"][i].replace("\n", " ")
                    source = gresults["links"][i]
                    description = gresults["descriptions"][i]
                    result += f"[{title}]({source})\n"
                    result += f"`{description}`\n\n"
                except IndexError:
                    pass
            results.append(
                InlineQueryResultArticle(
                    title=f"Results for {gett}",
                    description=f" Github info of {title}\n  Touch to read",
                    input_message_content=InputTextMessageContent(
                        result, disable_web_page_preview=True
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

        elif text.split()[0] == "so":
            results = []
            gett = text.split(None, 1)[1]
            text = gett + ' "site:stackoverflow.com"'
            gresults = await GoogleSearch().async_search(text, 1)
            result = ""
            for i in range(4):
                try:
                    title = gresults["titles"][i].replace("\n", " ")
                    source = gresults["links"][i]
                    description = gresults["descriptions"][i]
                    result += f"[{title}]({source})\n"
                    result += f"`{description}`\n\n"
                except IndexError:
                    pass
            results.append(
                InlineQueryResultArticle(
                    title=f"Stack overflow saerch - {title}",
                    description=f" Touch to view search results on {title}",
                    input_message_content=InputTextMessageContent(
                        result, disable_web_page_preview=True
                    ),
                )
            )
            await client.answer_inline_query(query.id, cache_time=0, results=results)

    except (IndexError, TypeError, KeyError, ValueError):
        return
Exemplo n.º 24
0
class Bot(Api):

    def __init__(self):
        self.fake = Faker()
        config = configparser.ConfigParser()
        config.read('config.ini')
        self.user_count = int(config['DEFAULT']['user_number'])
        self.max_post_per_user = int(config['DEFAULT']['max_post_per_user'])
        self.max_like_per_user = int(config['DEFAULT']['max_like_per_user'])
        logging.basicConfig(filename="Bot.log", level=logging.INFO)


    """
    Handle or random create users
    optional parameter:
    users - for custom set users
            example {"*****@*****.**":{"password":"******", "first_name":"Dog","last_name":"Catovich"}}
    :return users dict {"*****@*****.**":"password", .......}  witch status code = 202 Create
    """
    def random_or_custom_create_users(self, users=None):
        user_auth_data={}
        if users is not None:
            for user in users:
                response = self.create_user(user)
                if response.status_code == '201':
                    user_auth_data[user] = users[user]['password']
                    logging.info('Create user'+user+json.dumps(users[user]))
            if len(user_auth_data) == 0:
                raise Exception("Not response")
            return user_auth_data
        print(self.fake.ascii_free_email())
        print(self.user_count)
        for i in range(self.user_count):
            username = self.fake.ascii_free_email()
            information = {"email": username,
                           "password": self.fake.password(4),
                           "first_name": self.fake.first_name(),
                           "last_name": self.fake.last_name()}

            response = self.create_user(information)
            if response.status_code == 201:
                print('username',type(username),' ',username)
                user_auth_data[username] = information['password']
                logging.info('Create user' + username + json.dumps(information))
        if len(user_auth_data) == 0:
            raise ResponseException("not response")
        return user_auth_data

    def obtain_tokens(self, data):
        token_list = []
        for user in data:
            response = self.auth(user=user,password=data[user])
            if isinstance(response,str):
                token_list.append(response)
            else:
                logging.info(user+' token not Accepted')

        return token_list

    def create_random_post(self, tokens):
        exist_post = {}

        for token in tokens:
            for z in range(0, random.randint(0, self.max_post_per_user)):
                print(z)
                data = {'title': self.fake.text(10).replace(' ', '_').replace('.',''), 'content': self.fake.text()}
                if exist_post.get(data['title']) is None:
                    response = self.create_post(token=token, data=data)
                    if response.status_code == 201:
                        exist_post[data['title']] = token
        return exist_post

    def like_some_post(self,posts):
        title = list(posts.keys())
        users = list(posts.values())
        users_score = {}
        for i in users:
            users_score[i] = 0
        like_limit = len(users)*self.max_like_per_user
        like_count = random.randint(0,like_limit)
        for like in range(0,like_count):
            post = random.choice(title)
            user = random.choice(users)
            self.like(token=user, title=post)
            users_score[user] += 1
            if users_score[user] == self.max_like_per_user:
                users.remove(user)
Exemplo n.º 25
0
print("Android platform token:\t ", fake.android_platform_token())
print("Data time:\t ", fake.date_time())
print("ISBN3:\t ", fake.isbn13())
print("Postal code plus 4:\t ", fake.postalcode_plus4())
print("Sentence:\t ", fake.sentence())
print("Email:\t ", fake.ascii_company_email())
print("Date time add:\t ", fake.date_time_ad())
print("ISO8601:\t ", fake.iso8601())
print("Postcode:\t ", fake.postcode())
print("Sentence:\t ", fake.sentences())
print("ASCII email:\t ", fake.ascii_email())
print("Date time beween:\t ", fake.date_time_between())
print("ITIN:\t ", fake.itin())
print("Postcode in state:\t ", fake.postcode_in_state())
# print("Set formatter:\t ", fake.set_formatter())
print("ASCII free email:\t ", fake.ascii_free_email())
print("Date time between dates:\t ", fake.date_time_between_dates())
print("Fake job:\t ", fake.job())
print("Prefix:\t ", fake.prefix())
print("SHA1:\t ", fake.sha1())
print("ASCII safe email:\t ", fake.ascii_safe_email())
print("Date time this country:\t ", fake.date_time_this_century())
print("Language code:\t ", fake.language_code())
print("Prefix female:\t ", fake.prefix_female())
print("SHA256:\t ", fake.sha256())
print("Bank country:\t", fake.bank_country())
print("Data time this decade:\t ", fake.date_time_this_decade())
print("Last name:\t ", fake.last_name())
print("Prefix male:\t ", fake.prefix_male())
print("Simple profile:\t", fake.simple_profile())
print("BBAN:\t ", fake.bban())
Exemplo n.º 26
0
import textwrap
from datetime import timedelta

# Create a super user to use the admin site.
from django.contrib.auth.models import User
from faker import Faker

from Sidehustles.models import PublicProfile,  Services, PrivateStudent, Reviews

fake = Faker()

# Create Private Student 
privatestudent = []
  ps_fname = fake.first_name()
  ps_lname = fake.last_name()
  ps_email = fake.ascii_free_email()
  ps_password = fake.password()
	student = privatestudent(
        first_name=ps_fname, last_name=ps_lname, ascii_free_email = p_email, ps_password = password
    )
  privatestudents.save()
  privatestudents.append(privatestudent)

# Create Public Profile
publicProfile = []
for i in range(1, 10):
    p_fname = fake.first_name()
    p_lname = fake.last_name()
    p_display = fake.display_name()
    p_email = fake.ascii_free_email()
    profile = publicProfile(
Exemplo n.º 27
0
# Create a super user to use the admin site.
from django.contrib.auth.models import User
from faker import Faker
from faker.providers import person, internet, date_time, address, lorem

from sidehustles.models import Services, publicProfile, appUser, Reviews

fake = Faker()

# Create 10 fake Public Profile
publicProfiles = []
for i in range(1, 10):
    public_fname = fake.first_name()
    public_lname = fake.last_name()
    public_displayname = fake.name()
    public_email = fake.ascii_free_email()
    profile = publicProfile(public_fname=public_fname,
                            public_lname=public_lname,
                            public_displayname=public_displayname,
                            public_email=public_email)
    profile.save()
    publicProfiles.append(profile)

# Create 10 fake users
users = []
for i in range(1, 10):
    user_fname = fake.first_name()
    user_lname = fake.last_name()
    user_unique_email = fake.ascii_free_email()
    user_password = fake.password()
    user = appUser(user_fname=user_fname,
Exemplo n.º 28
0
print("providers.geo".center(100,"="))

print(fake.coordinate())
print(fake.latitude())
print(fake.latlng())
print(fake.local_latlng())
print(fake.location_on_land())
print(fake.longitude())


print("providers.internet".center(100,"="))

print(fake.ascii_company_email())
print(fake.ascii_email())
print(fake.ascii_free_email())
print(fake.ascii_safe_email())
print(fake.company_email())
print(fake.dga())
print(fake.domain_name())
print(fake.domain_word())
print(fake.email())
print(fake.free_email())
print(fake.free_email_domain())
print(fake.hostname())
print(fake.http_method())
print(fake.image_url())
print(fake.ipv4())
print(fake.ipv4_network_class())
print(fake.ipv4_private())
print(fake.ipv4_public())
Exemplo n.º 29
0
from faker import Faker
from faker.providers import internet, company
fake = Faker('zh_CN')
fake.add_provider(internet)
fake.add_provider(company)
for _ in range(10):
    print(fake.name(), fake.ascii_free_email(), fake.company())
Exemplo n.º 30
0
from faker import Faker

fake = Faker('fr_FR')

f = open("base-hashed-passwords.csv", "a")
for _ in range(500):
    f.write(fake.ascii_free_email())
    f.write(";")

    f.write(fake.sha256(raw_output=False))
    f.write("\n")

f.close()
    def handle(self, *args, **options):

        # drop the tables - use this order due to foreign keys - so that we can rerun the file as needed without repeating values
        Cart.objects.all().delete()
        LineItem.objects.all().delete()
        Order.objects.all().delete()
        Product.objects.all().delete()
        Customer.objects.all().delete()
        User.objects.all().delete()
        print("tables dropped successfully")

        fake = Faker()

        # create some customers
        # we convert some values from tuples to strings
        for i in range(10):
            first_name = fake.first_name(),
            first_name = str(first_name[0])
            last_name = fake.last_name(),
            last_name = str(last_name[0])
            username = first_name + last_name,
            username = username[0]
            user = User.objects.create_user(username=username,
                                            first_name=first_name,
                                            last_name=last_name,
                                            email=fake.ascii_free_email(),
                                            password='******')
            customer = Customer.objects.get(user=user)
            customer.address = fake.address(),
            customer.address = str(customer.address[0])
            customer.save()

        # create some products
        for i in range(10):
            product = Product.objects.create(
                name=fake.catch_phrase(),
                price=int(decimal.Decimal(random.randrange(155, 899)) / 100),
            )
            product.save()

        # create some carts
        products = list(Product.objects.all())
        for i in range(10):
            random_id = random.randint(1, 9)
            cart = Cart.objects.create(
                product=products[random_id],
                quantity=random.randrange(1, 42),
            )
            cart.save()

        # create orders from customers
        customers = Customer.objects.all()
        for customer in customers:
            for i in range(3):
                order = Order.objects.create(customer=customer, )
                order.save()

        # attach line_items to orders
        orders = Order.objects.all()
        carts = Cart.objects.all()
        for order in orders:
            for cart in carts:
                line_item = LineItem.objects.create(
                    quantity=cart.quantity,
                    product=cart.product,
                    cart=cart,
                    order=order,
                )
                line_item.save()

        print("tables successfully loaded")