在Python中,如果我想要以IP地址的形式生成随机字符串,该怎么办?Python随机生成的字符串的IP地址
例如:"10.0.1.1"
,"10.0.3.14"
,"172.23.35.1"
等。
有人能给我一些帮助吗?
在Python中,如果我想要以IP地址的形式生成随机字符串,该怎么办?Python随机生成的字符串的IP地址
例如:"10.0.1.1"
,"10.0.3.14"
,"172.23.35.1"
等。
有人能给我一些帮助吗?
>>> import random
>>> import socket
>>> import struct
>>> socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
'197.38.59.143'
>>> socket.inet_ntoa(struct.pack('>I', random.randint(1, 0xffffffff)))
'228.237.175.64'
注意这可能generarte IP地址就像0.0.0.0
,255.255.255.255
。
In [123]: '.'.join('%s'%random.randint(0, 255) for i in range(4))
Out[123]: '45.204.56.200'
In [124]: '.'.join('%s'%random.randint(0, 255) for i in range(4))
Out[124]: '7.112.222.205'
这可能是太明显了,但如果你的范围内,需要随机IP地址,你可以使用这个:
import random
for x in xrange(1,100):
ip = "192.168."
ip += ".".join(map(str, (random.randint(0, 255)
for _ in range(2))))
print ip
https://faker.readthedocs.io/en/latest/providers/faker.providers.internet.html
import faker
fake = Factory.create()
ip_addr = fake.ipv4(network=False)
lib有很多其他的用途l选项来伪造数据。
from faker import Faker
faker = Faker()
ip_addr = faker.ipv4()
的另一种方法生成的IP地址的形式随机字符串为:
>>> ip = '{}.{}.{}.{}'.format(*__import__('random').sample(range(0,255),4))
>>> ip
'45.162.105.102'
非常感谢您! – changzhi
如果我想获得IP地址V6,我该怎么办?谢谢 ! – changzhi