跳转到内容

如何在 Scrapy 中使用代理:完整指南

TL;DR

了解如何为大规模网页抓取配置 GProxy 住宅代理和数据中心代理与 Scrapy 配合使用,内容涵盖中间件设置、代理轮换和错误处理。

语言: Python

准备事项

  • [
  • "
  • P
  • y
  • t
  • h
  • o
  • n
  • 3
  • .
  • 8
  • +
  • "
  • ,
  • "
  • S
  • c
  • r
  • a
  • p
  • y
  • 2
  • .
  • x
  • p
  • i
  • p
  • i
  • n
  • s
  • t
  • a
  • l
  • l
  • s
  • c
  • r
  • a
  • p
  • y
  • "
  • ,
  • "
  • G
  • P
  • r
  • o
  • x
  • y
  • "
  • ,
  • "
  • S
  • c
  • r
  • a
  • p
  • y
  • s
  • p
  • i
  • d
  • e
  • r
  • s
  • e
  • t
  • t
  • i
  • n
  • g
  • s
  • "
  • ]

分步设置

1

[

2

{

3

"

4

T

5

I

6

T

7

L

8

E

9

"

10

:

11

12

"

13

14

15

16

S

17

C

18

R

19

A

20

P

21

Y

22

"

23

,

24

25

"

26

D

27

E

28

S

29

C

30

R

31

I

32

P

33

T

34

I

35

O

36

N

37

"

38

:

39

40

"

41

42

43

44

S

45

C

46

R

47

A

48

P

49

Y

50

51

52

53

54

55

56

57

"

58

,

59

60

"

61

C

62

O

63

D

64

E

65

"

66

:

67

68

"

69

P

70

I

71

P

72

73

I

74

N

75

S

76

T

77

A

78

L

79

L

80

81

S

82

C

83

R

84

A

85

P

86

Y

87

\

88

N

89

S

90

C

91

R

92

A

93

P

94

Y

95

96

S

97

T

98

A

99

R

100

T

101

P

102

R

103

O

104

J

105

E

106

C

107

T

108

109

M

110

Y

111

P

112

R

113

O

114

J

115

E

116

C

117

T

118

\

119

N

120

C

121

D

122

123

M

124

Y

125

P

126

R

127

O

128

J

129

E

130

C

131

T

132

"

133

}

134

,

135

136

{

137

"

138

T

139

I

140

T

141

L

142

E

143

"

144

:

145

146

"

147

148

149

S

150

E

151

T

152

T

153

I

154

N

155

G

156

S

157

.

158

P

159

Y

160

161

162

163

164

165

166

"

167

,

168

169

"

170

D

171

E

172

S

173

C

174

R

175

I

176

P

177

T

178

I

179

O

180

N

181

"

182

:

183

184

"

185

186

187

188

189

190

191

192

193

194

195

196

197

S

198

E

199

T

200

T

201

I

202

N

203

G

204

S

205

.

206

P

207

Y

208

"

209

,

210

211

"

212

C

213

O

214

D

215

E

216

"

217

:

218

219

"

220

#

221

222

S

223

E

224

T

225

T

226

I

227

N

228

G

229

S

230

.

231

P

232

Y

233

\

234

N

235

H

236

T

237

T

238

P

239

P

240

R

241

O

242

X

243

Y

244

_

245

E

246

N

247

A

248

B

249

L

250

E

251

D

252

253

=

254

255

T

256

R

257

U

258

E

259

\

260

N

261

D

262

O

263

W

264

N

265

L

266

O

267

A

268

D

269

E

270

R

271

_

272

M

273

I

274

D

275

D

276

L

277

E

278

W

279

A

280

R

281

E

282

S

283

284

=

285

286

{

287

\

288

N

289

290

291

292

293

'

294

M

295

Y

296

P

297

R

298

O

299

J

300

E

301

C

302

T

303

.

304

M

305

I

306

D

307

D

308

L

309

E

310

W

311

A

312

R

313

E

314

S

315

.

316

G

317

P

318

R

319

O

320

X

321

Y

322

M

323

I

324

D

325

D

326

L

327

E

328

W

329

A

330

R

331

E

332

'

333

:

334

335

3

336

5

337

0

338

,

339

\

340

N

341

342

343

344

345

'

346

S

347

C

348

R

349

A

350

P

351

Y

352

.

353

D

354

O

355

W

356

N

357

L

358

O

359

A

360

D

361

E

362

R

363

M

364

I

365

D

366

D

367

L

368

E

369

W

370

A

371

R

372

E

373

S

374

.

375

H

376

T

377

T

378

P

379

P

380

R

381

O

382

X

383

Y

384

.

385

H

386

T

387

T

388

P

389

P

390

R

391

O

392

X

393

Y

394

M

395

I

396

D

397

D

398

L

399

E

400

W

401

A

402

R

403

E

404

'

405

:

406

407

4

408

0

409

0

410

,

411

\

412

N

413

}

414

"

415

}

416

,

417

418

{

419

"

420

T

421

I

422

T

423

L

424

E

425

"

426

:

427

428

"

429

430

431

432

433

434

435

436

"

437

,

438

439

"

440

D

441

E

442

S

443

C

444

R

445

I

446

P

447

T

448

I

449

O

450

N

451

"

452

:

453

454

"

455

456

457

M

458

I

459

D

460

D

461

L

462

E

463

W

464

A

465

R

466

E

467

S

468

.

469

P

470

Y

471

472

473

474

475

476

477

478

479

480

481

"

482

,

483

484

"

485

C

486

O

487

D

488

E

489

"

490

:

491

492

"

493

C

494

L

495

A

496

S

497

S

498

499

G

500

P

501

R

502

O

503

X

504

Y

505

M

506

I

507

D

508

D

509

L

510

E

511

W

512

A

513

R

514

E

515

:

516

\

517

N

518

519

520

521

522

D

523

E

524

F

525

526

P

527

R

528

O

529

C

530

E

531

S

532

S

533

_

534

R

535

E

536

Q

537

U

538

E

539

S

540

T

541

(

542

S

543

E

544

L

545

F

546

,

547

548

R

549

E

550

Q

551

U

552

E

553

S

554

T

555

,

556

557

S

558

P

559

I

560

D

561

E

562

R

563

)

564

:

565

\

566

N

567

568

569

570

571

572

573

574

575

P

576

R

577

O

578

X

579

Y

580

581

=

582

583

'

584

H

585

T

586

T

587

P

588

:

589

/

590

/

591

U

592

S

593

E

594

R

595

:

596

P

597

A

598

S

599

S

600

@

601

P

602

R

603

O

604

X

605

Y

606

.

607

G

608

P

609

R

610

O

611

X

612

Y

613

.

614

N

615

E

616

T

617

:

618

1

619

0

620

0

621

0

622

'

623

\

624

N

625

626

627

628

629

630

631

632

633

R

634

E

635

Q

636

U

637

E

638

S

639

T

640

.

641

M

642

E

643

T

644

A

645

[

646

'

647

P

648

R

649

O

650

X

651

Y

652

'

653

]

654

655

=

656

657

P

658

R

659

O

660

X

661

Y

662

"

663

}

664

,

665

666

{

667

"

668

T

669

I

670

T

671

L

672

E

673

"

674

:

675

676

"

677

678

679

680

681

682

683

"

684

,

685

686

"

687

D

688

E

689

S

690

C

691

R

692

I

693

P

694

T

695

I

696

O

697

N

698

"

699

:

700

701

"

702

703

704

705

706

707

708

709

I

710

P

711

712

713

使

714

715

716

B

717

A

718

C

719

K

720

C

721

O

722

N

723

N

724

E

725

C

726

T

727

728

729

730

"

731

,

732

733

"

734

C

735

O

736

D

737

E

738

"

739

:

740

741

"

742

C

743

L

744

A

745

S

746

S

747

748

G

749

P

750

R

751

O

752

X

753

Y

754

R

755

O

756

T

757

A

758

T

759

I

760

N

761

G

762

M

763

I

764

D

765

D

766

L

767

E

768

W

769

A

770

R

771

E

772

:

773

\

774

N

775

776

777

778

779

D

780

E

781

F

782

783

P

784

R

785

O

786

C

787

E

788

S

789

S

790

_

791

R

792

E

793

Q

794

U

795

E

796

S

797

T

798

(

799

S

800

E

801

L

802

F

803

,

804

805

R

806

E

807

Q

808

U

809

E

810

S

811

T

812

,

813

814

S

815

P

816

I

817

D

818

E

819

R

820

)

821

:

822

\

823

N

824

825

826

827

828

829

830

831

832

R

833

E

834

Q

835

U

836

E

837

S

838

T

839

.

840

M

841

E

842

T

843

A

844

[

845

'

846

P

847

R

848

O

849

X

850

Y

851

'

852

]

853

854

=

855

856

'

857

H

858

T

859

T

860

P

861

:

862

/

863

/

864

U

865

S

866

E

867

R

868

-

869

C

870

O

871

U

872

N

873

T

874

R

875

Y

876

-

877

U

878

S

879

:

880

P

881

A

882

S

883

S

884

@

885

P

886

R

887

O

888

X

889

Y

890

.

891

G

892

P

893

R

894

O

895

X

896

Y

897

.

898

N

899

E

900

T

901

:

902

1

903

0

904

0

905

0

906

'

907

\

908

N

909

\

910

N

911

912

913

914

915

D

916

E

917

F

918

919

P

920

R

921

O

922

C

923

E

924

S

925

S

926

_

927

E

928

X

929

C

930

E

931

P

932

T

933

I

934

O

935

N

936

(

937

S

938

E

939

L

940

F

941

,

942

943

R

944

E

945

Q

946

U

947

E

948

S

949

T

950

,

951

952

E

953

X

954

C

955

E

956

P

957

T

958

I

959

O

960

N

961

,

962

963

S

964

P

965

I

966

D

967

E

968

R

969

)

970

:

971

\

972

N

973

974

975

976

977

978

979

980

981

R

982

E

983

T

984

U

985

R

986

N

987

988

R

989

E

990

Q

991

U

992

E

993

S

994

T

995

996

997

#

998

999

使

1000

1001

1002

1003

I

1004

P

1005

1006

1007

1008

"

1009

}

1010

,

1011

1012

{

1013

"

1014

T

1015

I

1016

T

1017

L

1018

E

1019

"

1020

:

1021

1022

"

1023

1024

1025

1026

1027

1028

1029

"

1030

,

1031

1032

"

1033

D

1034

E

1035

S

1036

C

1037

R

1038

I

1039

P

1040

T

1041

I

1042

O

1043

N

1044

"

1045

:

1046

1047

"

1048

1049

1050

1051

1052

1053

1054

1055

1056

1057

1058

1059

1060

"

1061

,

1062

1063

"

1064

C

1065

O

1066

D

1067

E

1068

"

1069

:

1070

1071

"

1072

#

1073

1074

S

1075

E

1076

T

1077

T

1078

I

1079

N

1080

G

1081

S

1082

.

1083

P

1084

Y

1085

\

1086

N

1087

R

1088

E

1089

T

1090

R

1091

Y

1092

_

1093

E

1094

N

1095

A

1096

B

1097

L

1098

E

1099

D

1100

1101

=

1102

1103

T

1104

R

1105

U

1106

E

1107

\

1108

N

1109

R

1110

E

1111

T

1112

R

1113

Y

1114

_

1115

T

1116

I

1117

M

1118

E

1119

S

1120

1121

=

1122

1123

5

1124

\

1125

N

1126

R

1127

E

1128

T

1129

R

1130

Y

1131

_

1132

H

1133

T

1134

T

1135

P

1136

_

1137

C

1138

O

1139

D

1140

E

1141

S

1142

1143

=

1144

1145

[

1146

4

1147

0

1148

3

1149

,

1150

1151

4

1152

0

1153

7

1154

,

1155

1156

4

1157

2

1158

9

1159

,

1160

1161

5

1162

0

1163

0

1164

,

1165

1166

5

1167

0

1168

2

1169

,

1170

1171

5

1172

0

1173

3

1174

]

1175

\

1176

N

1177

D

1178

O

1179

W

1180

N

1181

L

1182

O

1183

A

1184

D

1185

_

1186

T

1187

I

1188

M

1189

E

1190

O

1191

U

1192

T

1193

1194

=

1195

1196

3

1197

0

1198

"

1199

}

1200

,

1201

1202

{

1203

"

1204

T

1205

I

1206

T

1207

L

1208

E

1209

"

1210

:

1211

1212

"

1213

1214

1215

1216

1217

1218

S

1219

P

1220

I

1221

D

1222

E

1223

R

1224

"

1225

,

1226

1227

"

1228

D

1229

E

1230

S

1231

C

1232

R

1233

I

1234

P

1235

T

1236

I

1237

O

1238

N

1239

"

1240

:

1241

1242

"

1243

1244

1245

1246

1247

1248

1249

"

1250

,

1251

1252

"

1253

C

1254

O

1255

D

1256

E

1257

"

1258

:

1259

1260

"

1261

S

1262

C

1263

R

1264

A

1265

P

1266

Y

1267

1268

C

1269

R

1270

A

1271

W

1272

L

1273

1274

M

1275

Y

1276

S

1277

P

1278

I

1279

D

1280

E

1281

R

1282

1283

-

1284

O

1285

1286

O

1287

U

1288

T

1289

P

1290

U

1291

T

1292

.

1293

J

1294

S

1295

O

1296

N

1297

"

1298

}

1299

]

代码示例

为什么要在 Scrapy 中使用代理?

Scrapy 是最流行的 Python 网页抓取框架,每天支撑着数百万次抓取任务。在大规模抓取时,您不可避免会遇到 IP 封禁、CAPTCHA 和频率限制。GProxy 覆盖 150+ 国家、拥有 10M+ IP 的住宅代理池会自动轮换出口 IP,从而解决这些问题。

代理认证方式

GProxy 在 Scrapy 中支持两种认证方式:通过代理 URL 的用户名/密码认证,以及在 GProxy 控制台中添加服务器 IP 的 IP 白名单认证。两种方式都能与 Scrapy 内置的代理支持无缝配合。

基础代理配置

在 Scrapy 中使用 GProxy 代理最简单的方式是通过 settings.py 文件。设置 HTTP_PROXYHTTPS_PROXY 环境变量,或直接在 spider 的 custom settings 中配置。若需要轮换代理,请使用自定义 downloader middleware,为每个请求分配新的代理 URL。

自定义代理轮换中间件

用于生产环境的抓取时,自定义中间件能让您完全掌控代理分配。中间件在请求发送前拦截它,分配带轮换参数的代理端点,并处理超时或 407 认证失败等与代理相关的错误。GProxy 的 backconnect 端点在服务端完成轮换,因此通过同一端点建立的每个连接都会获得不同的 IP。

错误处理与重试

稳健的抓取需要完善的错误处理。配置 Scrapy 的 retry middleware 与您的代理方案配合:对 403、407、429 和 503 状态码进行重试,并设置合理的重试次数(3-5 次)。GProxy 的粘性会话可在需要时让多次重试保持同一个 IP——这对多页流程很有用。

并发请求与性能

Scrapy 擅长并发抓取,GProxy 的基础设施也能很好地承载高并发。先从 CONCURRENT_REQUESTS = 32DOWNLOAD_DELAY = 0.5 开始,再根据目标站点的表现调整。使用 GProxy 住宅代理时,通常可以稳定运行 50-100 个并发请求。

在 Scrapy 中做地理定位

GProxy 支持国家和城市级别的定位。将目标国家作为代理凭据的一部分传入(例如 user-country-us),即可让请求经由该地区的 IP 发出。抓取有地域限制的内容或本地化搜索结果时,这一点必不可少。

应用场景

[

{

"

T

I

T

L

E

"

:

"

"

,

"

D

E

S

C

R

I

P

T

I

O

N

"

:

"

使

"

}

,

{

"

T

I

T

L

E

"

:

"

S

E

R

P

"

,

"

D

E

S

C

R

I

P

T

I

O

N

"

:

"

使

I

P

"

}

,

{

"

T

I

T

L

E

"

:

"

线

"

,

"

D

E

S

C

R

I

P

T

I

O

N

"

:

"

I

P

"

}

,

{

"

T

I

T

L

E

"

:

"

"

,

"

D

E

S

C

R

I

P

T

I

O

N

"

:

"

"

}

]

进阶技巧
设置 AUTOTHROTTLE_ENABLED = True 可自动调节请求速率。用 CONCURRENT_REQUESTS_PER_DOMAIN 限制单站点负载。开发阶段启用 HTTP 缓存,避免浪费代理流量。需要高级代理池管理时可使用 scrapy-rotating-proxies 包。

FAQ

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

准备开始了吗?

几分钟即可开始使用 GProxy——住宅代理 $0.85/GB 起,IPv6 $0.03/个起,按用量付费。

其他集成

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.